2015-10-15 157 views
4

我遇到問題,因爲一段時間以來我找不到任何適用於我的解決方案。我有一個ListBox這是充滿了DataTable列表框多選選項獲取所有選定的值

listbox.DataSource = table; 
listbox.Displaymember = "Name";  
listbox.ValueMember = "ID"; 

如果我現在選擇在我的列表框中的項目,我可以把它弄出來,如:

listbox.SelectedValue.toString(); 

我的問題:

什麼我可以做,如果我想要從ListBox所有選定的值啓用多項選擇,並將它們全部保存在一個數組或類似的東西?!

我不能使用SelectedItems因爲沒有給我需要的信息。

回答

3

試試這個:

var lst = listBox1.SelectedItems.Cast<DataRowView>(); 
foreach (var item in lst) 
{ 
    MessageBox.Show(item.Row[0].ToString());// Or Row[1]... 
} 
+0

太棒了!非常感謝你 –

1

或者,如果你想只遍歷選定的項目,你可以使用SelectedIndices屬性:

foreach (int i in listbox.SelectedIndices) 
{ 
    // listbox.Items[i].ToString() ... 
} 

或者:

foreach (var item in listbox.SelectedItems) 
{ 
    MessageBox.Show(item.ToString()); 
} 
+0

爲了您的第一選擇它告訴我。選中 '對象'不包含'selected'的定義 第二個選項它告訴我類似下.GetSelectedIndices() –

+0

我編輯了我的答案。 – C1sc0

相關問題