Xceed datagrid - 获取当前数据

时间:2018-01-12 10:10:25

标签: c# xceed xceed-datagrid

我有一个' XceedDataGridWrapper'在一个绑定到某些数据的应用程序中。在XAML后面的C#文件中,对于保存我的数据集的文件,我有一个变量,它保存对Xceed数据网格的引用:

public XceedDataGridWrapper GridWrapper;

是否有一种简单的方法来获取当前在网格上可见的所有内容(因此,如果用户应用某种类型的过滤器,它将仅返回正在显示的项目)?

在理想的世界里,我希望能够有类似的东西:

var dataContext = GridWrapper.CurrentItems;

但我并没有清楚地看到任何方法可以做到这一点。

非常感谢帮助!

1 个答案:

答案 0 :(得分:1)

事实证明'XceedDataGridWrapper'中有一个'CollectionViewSource'(感谢指针@jsanalytics),但它存储在名为'mviewsource'的私有属性中 所以我做的是将它作为依赖属性公开:

public static readonly DependencyProperty CurrentDataProperty =
        DependencyProperty.Register(
            "CurrentData",
            typeof(DataGridCollectionView),
            typeof(XceedDataGridWrapper),
            new UIPropertyMetadata(null));

public DataGridCollectionView CurrentData
{
    get { return mviewSource; }
}

然后我可以从'XceedDataGrid'外部访问'CollectionView'。