2013-07-08 59 views
0

此代碼的工作以及列表視圖定製與謂詞排序(sortpropery是枚舉)

ICollectionView dataView = CollectionViewSource.GetDefaultView(this.ItemsSource); 

      if (dataView != null) 
      { 
       // Specify the new sorting information. 
       dataView.SortDescriptions.Clear(); 
       var description = new SortDescription(propertyName, _sortDirection); 
       dataView.SortDescriptions.Add(description); 

       dataView.Refresh();    
      } 

和的exaple字符串類型的屬性格式IR按字母順序排序,並枚舉它按在枚舉基數,問題是,我想自定義比較枚舉。

回答

1

你能做什麼,如果你的源列表實現IList,你可以投你的集合視圖源ListCollectionView並設置ListCollectionView.CustomSort定製IComparer類,你可以實現你自定義排序邏輯

ListCollectionView dataView = (ListCollectionView)(CollectionViewSource.GetDefaultView(this.ItemsSource)); 
dataView.CustomSort = new MyCustomSort();