WPF ItemsControl datacontext排序

Car*_*rlo 0 sorting data-binding wpf itemscontrol

好吧,我有一个ItemsControl绑定到a List<IComparableObject>,每一秒List对象都会改变,所以我不得不求助它们,所以我每秒都调用这个List.Sort()方法.在VS2008中检查Watch面板,我可以告诉它List被排序,但是ItemsControl没有.我怎样才能做到这一点?

谢谢!

Roe*_*elF 5

您必须对CollectionView进行排序:

 List<MyObject> myInternalList = new List<MyObject>();
 ...
 ICollectionView colView = CollectionViewSource.GetDefaultView(myInternalList);
 colView.SortDescriptions.Add(new SortDescription("Name", ListSortDirection.Ascending));
Run Code Online (Sandbox Code Playgroud)

您必须从列表中获取默认视图.在这种情况下,您不必对List进行排序,因为视图将始终排序.您可以添加所需数量的SortDescriptions.

HTH