gpt4 book ai didi

wpf - 如何在一个集合上定义 2 个单独的过滤器?

转载 作者:行者123 更新时间:2023-12-03 10:23:58 28 4
gpt4 key购买 nike

我有一个出现在 2 个单独列表中的集合。一个列表应显示所有项目(未过滤),第二个列表应显示符合某个标准的项目(已过滤)。

2 个列表的 ItemsSource 属性绑定(bind)到 ViewModel 中的 2 个属性。

我试图为过滤后的列表设置一个 DefaultView,但它会影响两个列表。

ListCollectionView view = (ListCollectionView) CollectionViewSource.GetDefaultView(_manager.Modules);
view.Filter = delegate(object item)
{
Model.BaseModule bm = item as Model.BaseModule;
if (bm != null)
{
return bm is TemplatedUnitOfTest && ((TemplatedUnitOfTest)bm).TemplateGuid == _uot.Header.Id;
}
return false;
};

我该怎么做?

最佳答案

不要更改默认 View ,而是显式创建两个单独的 ListCollectionView 实例,过滤一个,并将每个列表绑定(bind)到相关 View 。

一个 ItemsControl (或派生词)将始终包装其 Items收藏在 CollectionView在显示之前 - 如果您自己执行此步骤,那么您可以更好地控制显示的内容。

关于wpf - 如何在一个集合上定义 2 个单独的过滤器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13396353/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com