C# 列表框多选获取所有选定值
我有一个问题,因为一段时间以来,现在只是找不到任何解决办法,对我来说。我有一个C# 列表框多选获取所有选定值,c#,winforms,datatable,listbox,C#,Winforms,Datatable,Listbox,我有一个问题,因为一段时间以来,现在只是找不到任何解决办法,对我来说。我有一个列表框,里面充满了数据表 listbox.DataSource = table; listbox.Displaymember = "Name"; listbox.ValueMember = "ID"; 如果我现在在我的列表框中选择一个项目,我可以将其取出,如下所示: listbox.SelectedValue.toString(); 我的问题是: 如果我想从启用了多重选择的列表框中选择所有值,并将它们全
列表框
,里面充满了数据表
listbox.DataSource = table;
listbox.Displaymember = "Name";
listbox.ValueMember = "ID";
如果我现在在我的列表框中选择一个项目,我可以将其取出,如下所示:
listbox.SelectedValue.toString();
我的问题是:
如果我想从启用了多重选择的列表框
中选择所有值,并将它们全部保存在数组或类似的东西中,我该怎么办
我不能使用SelectedItems
因为它没有提供我所需的信息。或者如果您只想迭代选定的项目,您可以使用selectedDices
属性:
foreach (int i in listbox.SelectedIndices)
{
// listbox.Items[i].ToString() ...
}
或:
试试这个:
var lst = listBox1.SelectedItems.Cast<DataRowView>();
foreach (var item in lst)
{
MessageBox.Show(item.Row[0].ToString());// Or Row[1]...
}
var lst=listBox1.SelectedItems.Cast();
foreach(lst中的var项目)
{
MessageBox.Show(item.Row[0].ToString();//或行[1]。。。
}
对于您的第一个选项,它告诉我。选定的“对象”不包含“选定”的定义。第二个选项,它在.GetSelectedIndices()下告诉我类似的内容
var lst = listBox1.SelectedItems.Cast<DataRowView>();
foreach (var item in lst)
{
MessageBox.Show(item.Row[0].ToString());// Or Row[1]...
}