WPF使用Datagrid保持列排序

时间:2009-11-10 18:51:15

标签: wpf sorting datagrid

我有几个datagrid需要更新信息。事情是,由于不止一个人同时在系统上工作,因此需要定期刷新数据网格。当我刷新时,我失去了用户的排序。

有没有办法保留它?

感谢

2 个答案:

答案 0 :(得分:5)

只需更新绑定集合的内容 - 不要替换集合本身。然后你不会得到一个新的CollectionView,所以你的排序不会受到影响。

答案 1 :(得分:2)

请注意,这是未经测试的,但您可以这样做吗?

ListCollectionView lcv = (ListCollectionView)CollectionViewSource.GetDefaultView(myDataGrid.ItemsSource);
IComparer mySort = lcv.CustomSort;  // assumes you've already set it beforehand
... // stuff happens
lcv.CustomSort = mySort;

我自己还在学习WPF,但希望这有一些帮助...... -Matt。