【问题标题】:WPF ItemsControl datacontext sortingWPF ItemsControl 数据上下文排序
【发布时间】:2009-08-07 06:46:58
【问题描述】:
好的,我有一个ItemsControl 绑定到一个List<IComparableObject>,每一秒List 对象都会改变,所以我必须使用它们,所以每一秒我都会调用List.Sort() 方法。检查 VS2008 中的 Watch 面板,我可以看出 List 已排序,但 ItemsControl 没有。我怎样才能做到这一点?
谢谢!
【问题讨论】:
标签:
wpf
data-binding
sorting
itemscontrol
【解决方案1】:
你必须对 CollectionView 进行排序:
List<MyObject> myInternalList = new List<MyObject>();
...
ICollectionView colView = CollectionViewSource.GetDefaultView(myInternalList);
colView.SortDescriptions.Add(new SortDescription("Name", ListSortDirection.Ascending));
您必须从列表中获取默认视图。
在这种情况下,您不必对列表进行排序,因为视图将始终被排序。您可以添加任意数量的 SortDescriptions。
HTH