我对如何在MVVM应用程序中使用ObservableCollection和CollectionViews非常困惑。我对技术解释不感兴趣,你告诉我如何在绑定到ObservableCollection时实际使用CollectionView。ObservableCollection <T>,CollectionView和排序
我有一个列表框。 ListBox是绑定到ObservableCollection集合的数据。
我也有一个组合框。在ComboBox中,我有两个字符串:“按字母排序”和“按逆序排序”。根据选择哪个项目,逻辑分类操作发生。没有什么特别的。现在
,我还是有要求的。发生排序时不得有任何视觉副作用。
例如:
- 用户看到 “M”, “N”,在列表框 “○”,他选择 “n” 个,那么他排序反向的字母顺序。
- 用户现在看到的 “o”, “N”, “M”。列表框不会以任何方式进行滚动。用户仍应该看到“n”被选中(SelectedItem被绑定到ViewModel,并且没有更改事件应该被触发)。
是我想要达到的目标吗?没有代码,因为我真的不知道CollectionView是否意味着支持这一点。
如果你能指点我一个关于这个的教程,那也会有帮助(最好是有完整代码的)。我真的找不到像动态排序列表框那样简单的教程。
总之,没有技术解释,您想知道如何查看CollectionView,因为您找不到教程,并且您不确定CollectionView是否是正确的工具。从MSDN搜索“CollectionView WPF”并且第一个项目有一个对ListBox进行排序的示例。 http://msdn.microsoft.com/en-us/library/ms754073.aspx – Paparazzi 2012-03-10 14:43:35
他询问如何同时保持在同一个地方当前选择的项目进行排序。 – Phil 2012-03-10 15:16:07
@Phil“找不到关于这样简单的教程为动态排序列表框”这是张贴评论不是答案。 – Paparazzi 2012-03-10 20:12:37