我有一个使用 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/

10-10 02:15