Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: вопрос по Listbox Добавлено: 20.11.07 12:51  

Автор вопроса:  KreAtoR
Подскажите решение

Есть ListBox (listFilters) который заполняю данными

For Each f In catlist
    listFilters.AddItem f.Name
Next f

после заполнения выбираю нужный мне фильтр

filterName = listFilters.Text

переменную filterName сохраняю.

при новом обращении к listFilters задача чтобы выделился тот фильтр который я использовал.

делаю цикл

For i = 0 To listFilters.ListCount - 1
    If listFilters.List(i) = filterName Then
         '???????????????????
    End If
Next i

нахожу где находится нужный мне фильтр, а дальше незнаю как его выделить. У меня еще галочки ставятся.

подскажите как выделить нужную строку

Ответить

  Ответы Всего ответов: 4  

Номер ответа: 1
Автор ответа:
 EUGY



Вопросов: 0
Ответов: 454
 Профиль | | #1 Добавлено: 20.11.07 13:32
listFilters.Selected(i) = True

Ответить

Номер ответа: 2
Автор ответа:
 KreAtoR



Вопросов: 120
Ответов: 438
 Профиль | | #2 Добавлено: 20.11.07 13:37
огромное пасибо :)))

Ответить

Номер ответа: 3
Автор ответа:
 KreAtoR



Вопросов: 120
Ответов: 438
 Профиль | | #3 Добавлено: 20.11.07 13:43
Сразу вопрос в эту тему. вопрос о галочках.

по рпимеру .selected (i) стало ясно что выделенная строка и галочка не совсем одно и тоже.

если ставлю галочку на другой строке, то старая не пропадает. и переменная собственно тоже не меняется.
приходится делать все в три шага.

1. выключить старую галочку
2. включить новую галочку
3. выделить нужную строку

есть ли более простой вариант???

Ответить

Номер ответа: 4
Автор ответа:
 intel-DX



ICQ: 445091742 

Вопросов: 4
Ответов: 169
 Профиль | | #4 Добавлено: 20.11.07 18:08
Установи List1.MultiSelect = 1
и все работает

Dim Filt() As Boolean
'Zapolnjaen List1
Private Sub Command1_Click()
    For i = 1 To 20
        List1.AddItem String(i, 5)
    Next i
    ReDim Filt(List1.ListCount)
End Sub
'Use filter button
Private Sub Command2_Click()
    Filt(List1.ListIndex) = True
    For i = 0 To List1.ListCount - 1
        List1.Selected(i) = Filt(i)
    Next i
End Sub
Private Sub List1_Click()
    For i = 0 To List1.ListCount - 1
        If (List1.ListIndex <> i) And (Filt(i) = False) Then List1.Selected(i) = False
    Next i
End Sub

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам