2012-02-24 3 views
1

검색으로 이전 요청으로 찾을 수 없었습니다. 이상합니다. 나는 단순히 comboBox에 바인딩 된 컬렉션 뷰에 여러 정렬 조건을 적용하려고합니다.WPF 콤보 상자/목록 상자 또는 CollectionView의 여러 정렬 조건

cmbRptCur.Items.SortDescriptions.Add(new SortDescription("Length", ListSortDirection.Ascending)); 
cmbRptCur.Items.SortDescriptions.Add(new SortDescription("Content", ListSortDirection.Ascending)); 

을하지만, 첫 번째 정렬 조건이 적용됩니다

나는이 시도했다. 문자열의 목록입니다. 먼저 문자열의 길이에 따라 오름차순으로 정렬하고 알파벳순으로 오름차순으로 정렬하려고합니다. 이상적으로 나는 최선의 선택 :

답변

1

예로 들어이 시도를 할 수 있도록 두 가지 작업을 수행하는 방법을 알고 싶습니다 :

같은
var variable = ListSortDirection.Orderby(c => c.Length).ThenBy(n => n.Content) 

또는 뭔가.

또는이 : 그냥 예를 들어

var variable = (from c in ListSortDirections 
     orderby c.Length, c.Content 
     select row).ToList(); 

.

+1

다른 방법이 있어야한다고해도 LINQ 경로를 사용해보기로했습니다. .Cast ()을 쿼리 할 수있는 형식으로 가져 오려면 제대로 작동해야합니다. 나는 여전히 콤보 상자에서 직접하는 법과 LINQ에 의지 할 필요가없는 방법을 알고 싶습니다. 즉, (ListCollectionView.Cast의 c에서 () orderby c.Length, c select c) .ToList()); – cOrOllArY