2
我有一个包含任务集合的项目集合列表。在我的ViewModel上,我有一个项目的ICollectionView,所以我可以过滤标记为已完成的项目,参见下面的过滤器代码。在集合中过滤集合MVVM
public void FilterDoneItems()
{
if (this.MarkDone)
{
ProjectsViewSource.Filter = new Predicate<object>(FilterDone);
}
else
{
ProjectsViewSource.Filter = null;
}
}
这适用于项目,但我也想筛选出完成的任务。由于ProjectDTO包含任务(列表),因此我无法将任务包装在ICollectionView中以在ViewModel中对其进行过滤。
我不确定如何最好地去过滤任务以及任何人都可以帮忙吗?
我必须绑定到CollectionViewSource或可我还是结合实际收集和有过滤? – Burt 2010-06-24 09:38:05
@Burt:你仍然绑定到实际的集合。从CollectionViewSource.GetDefaultView文档:“如果直接绑定到集合,WPF实际绑定到该集合的默认视图。” – Quartermeister 2010-06-24 11:33:45