[英]How to programmatically set IsChecked property on ListboxItem?
我有一个列表框,我通过ItemsSource = list填充列表。
现在,我有另一个清单。 我想要做的是遍历ListBox,看看ListBoxItem.Name是否相同。 如果是,则应选择ListBoxItem。
我的点子:
List<string> firstList = new List<string>();
List<string> secondList = new List<string>();
Listboxx.ItemsSource = firstList;
foreach (string striing in secondList)
{
foreach (ListBoxItem iitem in Listboxx)
{
if (striing == iitem.Name)
{
iitem.IsSelected = true;
}
}
}
或者ListboxItemTemplate中有没有办法将IsChecked bool设置为{Binding IsCheckedOrNot}?
一般情况下应尽可能避免使用嵌套循环。 为什么不做这样的事情?
foreach(var iitem in Listboxx.Items.Where(i => secondList.Contains(i.Name)))
{
iitem.IsSelected = true;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.