UltraWinGrid 요약 디스플레이 영역: 사용 시기
UltraWinGrid는 셀 수 없이 많은 귀중한 데이터 중심 기능을 제공하며 최종 사용자가 적합하다고 생각하는 대로 다양한 유형의 보기, 레이아웃 및 스타일로 변형할 수 있습니다.
열을 요약할 때 꽤 많은 위치에 결과를 표시할 수 있습니다. 이 문서에서는 그리드가 그룹화되고 그룹화되지 않을 때의 다양한 표시 영역을 나열하고 설명합니다. 요약이 배치될 위치를 이해할 수 있습니다.
SummaryDisplayAreas 속성은 여러 위치에서 동시에 요약을 배치해야 하는 위치를 지정하기 위해 플래그가 지정된 열거형으로 쉽게 정의할 수 있습니다. 배치할 수 있는 위치는 4개뿐입니다.
1. 그룹화되지 않은 그리드의 루트 행 컬렉션의 바닥 글에서
2. 그룹별 행의 각 데이터 행 컬렉션의 끝에서
3. group-by rows 컬렉션의 바닥 글에서
4. 각 그룹별 행 내(정렬된 열 이름 오른쪽)
요약 바닥글은 다음 위치에 표시됩니다.
- Default.
- 각 group-by 행의 끝에 있는 행 컬렉션
- 그룹별 행
- 루트 행 컬렉션(그룹화되지 않음)
예 1: 그룹화된 행

- Bottom
- 각 group-by 행의 끝에 있는 행 컬렉션
- 루트 행 컬렉션(그룹화되지 않음)
예 2: 그룹화된 행

- BottomFixed
- 각 group-by 행의 끝에 있는 행 컬렉션
- 루트 행 컬렉션(그룹화되지 않음). 요약 바닥글이 수정되어 보기에서 스크롤되지 않습니다.
Example 3: Ungrouped
- GroupByRowsFooter(이 플래그는 효과를 보려면 Top, TopFixed, Bottom 또는 BottomFixed와 결합해야 함)
- 각 group-by 행의 끝에 있는 행 컬렉션
- group-by 행 컬렉션의 요약 바닥글
- 루트 행 컬렉션(그룹화되지 않음)
예 4: 그룹화된 행

- HideDataRowFooters
- 각 group-by 행의 끝에 있는 행 컬렉션
- 루트 행 컬렉션
- InGroupByRows
- 그룹별 행
- RootRowsFootersOnly(이 플래그는 효과를 보려면 Top, TopFixed, Bottom 또는 BottomFixed와 결합해야 합니다. 행이 그룹화되지 않은 경우 이 플래그는 적용되지 않습니다. 이것은 InGroupByRows 옵션의 작동에 영향을 미치지 않습니다. InGroupByRows는 이 플래그의 값에 관계없이 여전히 동일한 방식으로 작동합니다.)
- 루트 행 컬렉션
예 5: 그룹화된 행

- Top
- 각 group-by 행의 시작 부분에 있는 행 컬렉션
예 6: 그룹화된 행

- TopFixed
- 시작 부분에 있는 루트 행 컬렉션(그룹화되지 않음). 요약 바닥글이 수정되어 보기에서 스크롤되지 않습니다.
예 7: 그룹화되지 않은 행

- None
- 요약은 어디에도 표시되지 않습니다.
*데이터의 행 컬렉션은 동일하게 처리됩니다. Grand Totals(그룹화되지 않은 행) 및 Sub-totals(그룹화된 행 집합).
루트 행 컬렉션에 대한 요약은 숨길 수 없으며, 그리드가 그룹화되거나 그룹화되지 않은 경우 'Default' 및 'None' 상태를 수동으로 전환할 수 있습니다.
- 먼저 UltraWinGrid에서 'AfterSortChange' 이벤트를 처리합니다
- 둘째, 현재 밴드의 열이 'SortedColumns' 컬렉션에 있는지 확인합니다.
- 셋째, 'SortedColumns' 컬렉션에 있는 열이 'IsGroupByColumn'인지 확인합니다.
마지막으로 그리드의 'SummaryDisplayAreas' 열거형을 각 요약에 대해 'Default'로 설정합니다. *요약이 빠지면 바닥글이 계속 표시됩니다.
void ultraGrid1_AfterSortChange(object sender, BandEventArgs e) { foreach (UltraGridColumn col in e.Band.SortedColumns) { if (col.IsGroupByColumn == true) { ultraGrid1.DisplayLayout.Bands[0].Summaries[0].SummaryDisplayArea = Infragistics.Win.UltraWinGrid.SummaryDisplayAreas.Default; } else { ultraGrid1.DisplayLayout.Bands[0].Summaries[0].SummaryDisplayArea = Infragistics.Win.UltraWinGrid.SummaryDisplayAreas.None; } } }