ListBox CollectionViewSource.Filter方法问题
我有一个在XAML中定义的列表框,我使用从文本框中获取的文本中的以下代码过滤其项目:
if (list.Items.Count > 0)
{
CollectionViewSource.GetDefaultView(list.Items).Filter =
new Predicate<object>((item) => {
string valtoCheck = item.ToString();
return valtoCheck.StartsWith(filterText,
StringComparison.CurrentCultureIgnoreCase);
});
}
一切正常,除非过滤器没有找到符合条件的项目。
恩。假设列表中有4个项目:Rob
,Bob
,Andy
,John
。
当我输入Ro
时,列表会相应地过滤(显示抢劫)。
当我输入b
时,列表会被适当过滤(显示bob)。
但是,如果我输入z
(目标列表变空),我会得到一个正确的空列表;但是从那时起List.Items.Count被设置为零。列表变空。我会假设输入替换b
应该显示我Bob
但它没有;一旦我输入列表框中任何项目中未包含的文本,列表的项目就会设置为空!
我在这里错过了什么吗?
没有找到相关结果
已邀请:
2 个回复
递劝臼类洪
晤默报