单击Datagrid ColumnHeader时 - 如何进行排序?以及如何覆盖它?

时间:2011-05-24 10:22:43

标签: c# wpf sorting .net-4.0 datagrid

当点击DataGrid ColumnHeader时,如果底层dataSource是CollectionView,数据网格将自动对数据进行排序。

它是如何在内部工作的,它只是将SortDescriptors()添加到View中以便排序或者它是否使用IComparer类?

我认为它更倾向于使用SortDescriptors,因此它的排序速度很慢。

我做了一些研究,并说使用

CollectionView.CustomSort = a class implementing IComparer方法要快得多。

因此,为了尝试这种方法,如何覆盖DataGrid的自动排序机制 - 当点击列标题时 - 并使用CustomSort进行自己的排序?

对此的任何帮助都非常感谢。

1 个答案:

答案 0 :(得分:1)

您可以使用Sorting Event,它将为您提供他们用于排序的列以及在哪个方向。