【发布时间】:2012-02-12 08:42:40
【问题描述】:
我有一个DataGrid,我正在尝试以最直接的方式进行排序:单击每列的标题。
这在 View 上效果很好(在 MVVM 上下文中),但我也想对底层 ViewModel 集合(ObservableCollection)进行排序。关于如何实现源代码收集有什么建议吗?
【问题讨论】:
-
您是否愿意完全放弃 DataGrid 排序并改用您的基础集合排序?在这样做之前我会三思而后行。
-
这是一个类,专门设计用于将实际数据与其呈现方式分开。 msdn.microsoft.com/en-us/library/…
-
不,我很满意它在视图上实现的排序(即 DataGrid 的项目)。我也需要相同的排序来传播到 ItemsSource 集合。
-
更多的是关于如何捕获“SortingChangedEvent”的问题 - 因为其余的对于 Linq OrderBy/OrderByDescending 调用非常简单。我对吗?网格不触及底层集合的原因之一是它可能根本不知道如何对其进行排序:) 所以它采用粗略的方式对其项目进行排序。
标签: wpf sorting mvvm datagrid wpfdatagrid