2013-06-20 23 views
0

背景:我有一個允許多選的列表框。我的列表框中有一個特定的值,如果選中,需要爲它運行一個單獨的代碼路徑,其他所有選擇都通過另一個路徑。查找列表框中的選定項目

問題:我無法弄清楚如何在VB.NET中正確編寫它,使其按我想象的方式工作。

代碼:

For Each Item As String In listbox1.SelectedItems 
     If listbox1.SelectedItem = myValue Then 
      Do this 
     Else 
      Do that 
     End If 
    Next 

如果我讓我的名單上進行多項選擇的代碼無法正常工作。只有當myValue是listbox1中的唯一選擇時,它才能正常工作。

有什麼建議嗎?

+0

了'listbox1'如何約束,是什麼類型'myValue'?此外,這是Winforms,還是ASP? – Kratz

回答

4

你的迭代是不對的,你應該在你的循環使用項目值:

For Each Item As String In listbox1.SelectedItems 
    If Item = myValue Then 
     Do this 
    Else 
     Do that 
    End If 
Next 

每個循環基本完成以下工作:(請原諒任何語法錯誤,我的VB是生鏽)

For index As Integer = 0 To listbox1.SelectedItems.Length 
    Def Item = listbox1.SelectedItems[index] 
Next 
+0

非常感謝你的幫助Mataniko。那正是我需要的。標記爲答案。 –

+0

不客氣,祝你好運! – Mataniko

1

嘗試:

For i = listbox1.Items.Count 
    If listbox1.Items[i].IsSelected = True Then 
     'Do this 
    Else 
     'Do that 
    End If 
Next i 
相關問題