我有一个使用 Caliburn.Micro 的 WPF 应用程序。 DataGrid 绑定(bind)到 ViewModel 中的对象集合。如果可能的话,您能否建议一种过滤 DataGrid 内容的方法?
谢谢。
最佳答案
在 View 模型中创建一个新属性:
private ICollectionView fooView;
public ICollectionView FooView
{
get
{
return this.fooView;
}
set
{
this.fooView = value;
NotifyPropertyChanged("FooView");
}
}
然后在填充可绑定(bind)集合之后:
// Populate collection
BindableCollection collectionName = this.PopulateCollection();
FooView = CollectionViewSource.GetDefaultView(collectionName);
在您看来,将绑定(bind)从
collectionName
更改为 FooView
。CollectionView 类提供了对数据进行排序/过滤/分组的方法。在你的情况下 How to: Filter Data in a View 。过滤器代码将根据您的型号和要求而有所不同。
关于Caliburn.Micro 的 WPF DataGrid 过滤,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11687280/