vb:如何一次在列表框中选择多个项目?

时间:2014-09-30 03:48:13

标签: vb.net listbox

我有一个列表框,其中包含1到10之间的数字列表。 现在我想编程选择那些大于5的数字。但是我也想只触发一次SelectedIndexChanged事件。

我知道我可以使用addrange()方法一次将多个项添加到Listbox中。

但似乎并没有同时选择多项的类似解决方案?

我该怎么做?

1 个答案:

答案 0 :(得分:0)

你的问题是不清楚的,但是...

首先,您需要将Listbox SelectionMode设置为MultySimple。

enter image description here

然后使用ListBox1.SelectedItems.Count< 2因此它只在选择开始时触发SelectedIndexChanged事件一次 当然,您可以编辑代码以满足您的需求,并随时触发它。

 Private Sub ListBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListBox1.SelectedIndexChanged
    If ListBox1.SelectedItems.Count < 2 Then
        MsgBox("one")
    End If
End Sub

要选择5以上的所有内容,您需要制作一个整数列表 然后使用a for each循环来获取具有所需值的整数列表中的项目。

然后使用for循环中的整数列表选择列表框中的项目。

Dim l As New List(Of Integer)

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    For Each Item As Integer In ListBox1.Items
        If Item > 5 Then
            l.Add(ListBox1.FindString(Item))
        End If
    Next

    For SetItem As Integer = 0 To l.Count - 1
        For i = 0 To ListBox1.Items.Count - 1
            If i = l.Item(SetItem) Then
                ListBox1.SetSelected(i, True)
                Exit For
            End If
        Next
    Next
End Sub