ObservableCollectionがWPFリストビューにバインドされています。列ヘッダーをクリックして、ListViewコントロールの列を並べ替えることができるようにしたいと考えています。これを行うために、私はObservableCollectionをソートし、バインディングにGUIの更新を任せています。
ObservableCollectionを並べ替えるには、次のコードを使用しています。
sortedData = new ObservableCollection<Tag>( from x in data
orderby x.ID descending
select x );
data = sortedData;
注意:データはListViewにバインドされています
私が抱えている問題は、各列に、目的の効果を実現するためのコピーと貼り付けのコードがたくさんあることです。LINQステートメントの「orderbyx.IDdescending」部分を関数パラメーターとして渡すことは可能ですか?
または、目的の結果を達成するための完全に簡単な方法はありますか?