VB.Net - 删除ListBox中的空项

时间:2016-06-21 01:52:11

标签: vb.net listbox

我想从列表框中删除看起来像这样的空项:

book1
book2

book3

book4
book5

等等..

我试过这段代码:

Dim i As Integer = 0
        Do While (ListBox1.Items.Count) - 1 >= i
            If String.IsNullOrEmpty(ListBox1.Items(i)) Then
                ListBox1.Items.Remove(ListBox1.Items(i))
                i -= 1
            End If
            i += 1
        Loop

我不知道为什么它不起作用。

1 个答案:

答案 0 :(得分:1)

您可以出于任何目的使用任何类型的循环,但每种类型最适合某些情况,在这种情况下Do While循环是一个糟糕的选择。在这种情况下,最好的选择是使用For循环并向后计数:

For i = ListBox1.Items.Count - 1 To 0 Step -1
    If String.IsNullOrEmpty(CStr(ListBox1.Items(i))) Then
        ListBox1.Items.RemoveAt(i)
    End If
Next