我有一个绑定到ObservableCollection<Recipe>
的{{1}}。可以通过我的个人谓词实现进行过滤。 ICollectionView
绑定在ICollectionView
上。
现在,我想在过滤集合后重新排序dataGrid
的列表。
食谱的属性为“标识符”。如果您确切输入了食谱的标识符,则应将其放在列表的顶部。
一个例子:
如果您在过滤器中输入Recipes
,则应将1234
和Recipe
放在列表的顶部,而不是放在第二位。
Identifier = 1234
答案 0 :(得分:0)
您可以在SortOrder
类中添加Recipe
属性,并在SortDescription(nameof(Recipe.SortOrder), ListSortDirection.Ascending)
的{{1}}属性中添加新的SortDescriptions
。然后,根据所需的排序顺序设置所有ICollectionView
对象的SortOrder
属性的值。这应该重新排列食谱列表。
根据您的要求,您可能需要使用Recipe
并启用实时排序:https://wpf.2000things.com/2014/01/16/988-enabling-live-sorting-in-a-collectionviewsource/
@redcurry指出,如果您使用CollectionViewSource
,则可以将ListCollectionView
属性设置为CustomSort
。