背景:我有一个允许多选的列表框。我的列表框中有一个特定值,如果选中该值,则需要为其运行单独的代码路径,而所有其他选择都通过另一条路径。
问题:我不知道如何在 VB.NET 中正确编写它以使其按照我想象的方式工作。
代码:
For Each Item As String In listbox1.SelectedItems
If listbox1.SelectedItem = myValue Then
Do this
Else
Do that
End If
Next
Run Code Online (Sandbox Code Playgroud)
如果我在列表中进行多项选择,代码将无法正常工作。只有当 myValue 是 listbox1 中的唯一选择时,它才能正常工作。
有什么建议?
您的迭代是错误的,您应该在循环中使用 Item 值:
For Each Item As String In listbox1.SelectedItems
If Item = myValue Then
Do this
Else
Do that
End If
Next
Run Code Online (Sandbox Code Playgroud)
For Each 循环基本上执行以下操作:(请原谅任何语法错误,我的 vb 生疏了)
For index As Integer = 0 To listbox1.SelectedItems.Length
Def Item = listbox1.SelectedItems[index]
Next
Run Code Online (Sandbox Code Playgroud)