c#listbox multiselect,selectedItems winforms

时间:2013-08-14 11:01:48

标签: c# winforms listbox

我看到很多从selectedItems获取值的例子,但在我的情况下,我想以某种方式分离这些值。我的意思是,例如,如果我在列表中有work home forrest car这样的选项,我希望能够在选择work后选择home将两个文本分开并将它们保存在一些字符串变量中。 现在我这样做:

string text = "";
foreach (var item in customListBox1.SelectedItems)
{
     text += item.ToString() + " ";
}

稍后我会以这种方式基于此选定项过滤datagridview:

var result = list3.Where(Srodek => Srodek.Srodek.category1 == text);

这就是我需要将它们分开的原因。我该怎么做? 如果问题不明确,请告诉我,我会尝试解释一下。

2 个答案:

答案 0 :(得分:2)

你可以做更好的事情:

string text = string.Join(",", customListBox1.SelectedItems.OfType<Object>().Select(x => x.ToString()).ToArray());

答案 1 :(得分:1)

var list  = customListBox1.SelectedItems.Cast<string>().ToList();
var result = list3.Where(Srodek => list.Any(x=>x == Srodek.Srodek.category1));