在WPF中没有listbox.findString。
答案 0 :(得分:3)
var entries = listBox.Items.Where(item => item.ToString() == "something");
答案 1 :(得分:3)
假设我们有一个列表框:
ListBox b = new ListBox();
然后你可以使用LINQ:
int index = b.Items.IndexOf((
from ListBoxItem a in b.Items
where a.Content.ToString() == "something"
select a).First());
或者您可以使用foreach:
foreach (ListBoxItem lbi in b.Items)
{
if (lbi.Content is string && (string)lbi.Content == "something")
{
index = b.Items.IndexOf(lbi);
break;
}
}
答案 2 :(得分:0)
在大多数情况下,您希望将ListBox的ItemsSource绑定到实现IEnumerable的代码中的实际集合,然后使用.Where()。First()语句查找字符串的第一个出现,如下所示: / p>
List<string> lstb = new List<string>() { "StringA", "StringB", "StringC" };
string stringC = lstb.Where(s => s == "StringC").First();
然后,如果您想以编程方式选择列表中的项目:
yourListBox.SelectedItem = stringC;
但是我强烈建议您花时间学习数据绑定和MVVM模型,它可以简化与WPF控件的交互。