2013-10-30 2 views
0

나는 collectionviewsource 항목을 가지고 있습니다. 각 항목은 SentTime 속성과 ParentId 속성을 가진 개체입니다. 나는 항목들은 ParentId에 의해 다음과 같은 방법으로 정렬하는 그룹에 원하는 : 그룹의collectionviewsource의 그룹화 된 특정 항목 정렬

  • 항목이 SentTime으로 분류되어야한다 SentTime으로 분류되어야한다
  • 그룹 오름차순 내림차순
1/10 전송

  • 항목 1, 부모 ID 1
  • ITE : 여기

    짧은 예이다 3/10 2/10 보낸 전송 m 2, 친 ID 1

  • 항목 3, 친 ID 3
  • 아이템 4 4/10 전송 상위 ID 3
  • 항목 5, 5/10 전송 상위 ID 1

그런 다음 그룹화 된 목록은 다음과 같아야합니다

항목 3

  • 항목 4
,

항목 1

  • 항목이
  • 항목 5

나는 ViewModel에 내 collectionviewsource 있습니다.

this.MyCvs.SortDescriptions.Clear(); 
this.MyCvs.SortDescriptions.Add(new SortDescription("SendTime", ListSortDirection.Ascending)); 
this.MyCvs.GroupDescriptions.Add(new PropertyGroupDescription("ParentId")); 

내가 알고, 그 난 그냥 항목이 (내 경우 ParentId에) 그룹화되어있는 재산에 의해 다른 SortDescription을 추가해야 CVS에서 그룹을 주문하는하지만 내가 가져올 결과를 제공하지 않습니다 . 미리 감사드립니다.

답변

0

그리드에서 그룹화 및 정렬을 수행 할 때 정렬 설명을 사용자 설정과 약간 다르게 설정해야합니다.

this.MyCvs.SortDescriptions.Clear(); 

this.MyCvs.GroupDescriptions.Add(new PropertyGroupDescription("ParentId")); 

this.FilteredMessages.SortDescriptions.Add(new SortDescription("ParentId", ListSortDirection.Ascending)); 
this.FilteredMessages.SortDescriptions.Add(new SortDescription("SendTime", ListSortDirection.Ascending)); 

이렇게하면 그룹별로 분류가 적용됩니다.

+0

죄송합니다. 실수를했습니다. 다른 CVS가 없습니다 (FilteredMessages는 MyCvs 여야 함). 귀하의 답변을 시도하고 그룹의 항목은 OK로 정렬되지만 그룹은 내림차순으로 정렬되지 않습니다. – kzub

+0

ParentId에 오름차순을 설정 했으므로 오름차순으로 정렬됩니다. 내림차순으로 설정하면 다른 방식으로 작동합니다. Btw,이 답변을 표시하거나 문제가 해결되면 투표하십시오. –