次の文字列があります。
「弦1」
「弦2」
「弦3」
「弦15」
「弦17」
文字列を上記のようにソートしたい。ただし、SortDescription を使用してリストを並べ替えると、次の出力が得られます。
「弦1」
「弦15」
「弦17」
「弦2」
「弦3」
これを達成するためのアルゴリズムがあることは理解していますが、SortDescription の組み込み機能を使用してこれを行う方法はありますか?
private void SortCol(string sortBy, ListSortDirection direction)
{
ICollectionView dataView =
CollectionViewSource.GetDefaultView(ListView.ItemsSource);
dataView.SortDescriptions.Clear();
SortDescription sd = new SortDescription(sortBy, direction);
dataView.SortDescriptions.Add(sd);
dataView.Refresh();
}
sortby は、並べ替えたい列を表すビュー モデル内のプロパティのプロパティ名です。
私の並べ替えオプションは、昇順と降順の 2 つだけのようです。しかし、CollectionView を並べ替える方法は、文字列を並べ替える方法ではありません。これを解決する簡単な方法はありますか?