对绑定到ObservableCollection的列表框进行排序

| 如何对我的列表框内容进行排序?在我看来,仅将其保留在UI层上会更有意义,因为排序不会影响我的业务逻辑,因此它可能出现在xaml或代码隐藏中。我不知道该怎么办。     
已邀请:
您将需要为此使用“ 0”。
private void Button1_Click(object sender, RoutedEventArgs e)
{
    ICollectionView view = CollectionViewSource.GetDefaultView(SomeCollection);
    view.SortDescriptions.Add
    (
        new SortDescription(\"Name\", ListSortDirection.Descending)
    );
}
要在XAML中进行排序,可以使用
CollectionViewSource
类。来自MSDN的示例:
<src:Places x:Key=\"places\"/>

<CollectionViewSource Source=\"{StaticResource places}\" x:Key=\"cvs\">
  <CollectionViewSource.SortDescriptions>
    <scm:SortDescription PropertyName=\"CityName\"/>
  </CollectionViewSource.SortDescriptions>
  <CollectionViewSource.GroupDescriptions>
    <dat:PropertyGroupDescription PropertyName=\"State\"/>
  </CollectionViewSource.GroupDescriptions>
</CollectionViewSource>

<ListBox ItemsSource=\"{Binding Source={StaticResource cvs}}\"
         DisplayMemberPath=\"CityName\" Name=\"lb\">
    

要回复问题请先登录注册