C# 在ListView中使用复杂的自定义排序

C# 在ListView中使用复杂的自定义排序,c#,wpf,listview,sorting,C#,Wpf,Listview,Sorting,我找不到如何将自定义排序添加到WPF ListView控件?我不需要按asc或desc列进行排序,我需要一个带有某种算法的自定义列 你能帮我吗 谢谢大家! 您可以在ListCollectionView上使用CustomSort属性,前提是您为您的类实现了IComparer: //somewhere in code behind of your window: var view = (ListCollectionView)CollectionViewSource.GetDefaultView(It

我找不到如何将自定义排序添加到WPF ListView控件?我不需要按asc或desc列进行排序,我需要一个带有某种算法的自定义列

你能帮我吗


谢谢大家!

您可以在
ListCollectionView
上使用
CustomSort
属性,前提是您为您的类实现了
IComparer

//somewhere in code behind of your window:
var view = (ListCollectionView)CollectionViewSource.GetDefaultView(Items); //Items is an ObservableCollection<T> 
view.CustomSort = new MyComparer(); //MyComparable implements IComparer
//在窗口的代码后面的某个地方:
变量视图=(ListCollectionView)CollectionViewSource.GetDefaultView(项)//项目是一个可观察的集合
view.CustomSort=new MyComparer()//MyComparable工具IComparer

绑定到项目的任何控件(如ListBox)都将按顺序显示元素。

您可以在
ListCollectionView
上使用
CustomSort
属性,前提是为类实现
IComparer

//somewhere in code behind of your window:
var view = (ListCollectionView)CollectionViewSource.GetDefaultView(Items); //Items is an ObservableCollection<T> 
view.CustomSort = new MyComparer(); //MyComparable implements IComparer
//在窗口的代码后面的某个地方:
变量视图=(ListCollectionView)CollectionViewSource.GetDefaultView(项)//项目是一个可观察的集合
view.CustomSort=new MyComparer()//MyComparable工具IComparer

任何绑定到项目的控件(如ListBox)都将按顺序显示元素。

使用ObservableCollection作为项目资源,并按您想要的逻辑对集合进行排序。。。这会让我想起你的,谢谢!那对我有用!使用ObservableCollection作为ItemsSource,并按您想要的逻辑对集合进行排序。。。这会让我想起你的,谢谢!那对我有用!我记得这个方法有问题。。但现在看来还可以。非常感谢。我记得这个方法有问题。。但现在看来还可以。非常感谢。