2015-05-07 3 views
-1

В списке я хочу удалить объект, но оставлю остальные. Я пробовал этот код, но он не работает.VB Listbox удалить объект

ListBox1.Items.Remove(ListBox1.Items.IndexOf("TEST")) 

Обходной поиск не найден, но не найдено. Любая помощь приветствуется.

+2

'Remove' принимает пункт/объект, представляющий то, что вы хотите удалить. 'RemoveAt' принимает целое число, представляющее индекс элемента для удаления. (WinForms) – Plutonix

+0

@plutonix Спасибо, также вариант! – Mathijs

ответ

2

Это будет работать с WebForms

Сначала найти ListItem вы хотите удалить:

Dim liItem As ListItem = ListBox1.Items.FindByValue("TEST") 

Вы также можете найти по тексту вместо значения:

Dim liItem As ListItem = ListBox1.Items.FindByText("TEST") 

Затем удалить его:

If (liItem IsNot Nothing) Then 

    ListBox1.items.Remove(liItem) 

end If 

UPDATE - Это будет работать с Windows Forms

ListBox1.Items.RemoveAt(ListBox1.Items.IndexOf("TEST")) 

Или это:

Dim index As Integer = ListBox1.FindString("TEST") 
If (index <> -1) Then 
    ListBox1.Items.RemoveAt(index) 
End If 
+0

Когда я пробую ваш код, он говорит: Type 'ListItem' не определен. – Mathijs

+0

спасибо за обновление! Работа совершенная. – Mathijs

Смежные вопросы