■ TreeList 클래스의 GetCustomSummaryValue 이벤트를 사용해 커스텀 SUMMARY를 적용하는 방법을 보여준다.
▶ 예제 코드 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
using System.Collections; using DevExpress.XtraTreeList; using DevExpress.XtraTreeList.Nodes; ... private TreeList treeList; ... this.treeList.OptionsView.ShowRowFooterSummary = true; this.treeList.Columns["Budget"].RowFooterSummary = SummaryItemType.Custom; this.treeList.Columns["Budget"].RowFooterSummaryStrFormat = "{0} 노드들이 제한을 초과했습니다."; this.treeList.GetCustomSummaryValue += treeList_GetCustomSummaryValue; ... #region 트리 리스트 커스텀 SUMMARY 값 구하기 - treeList_GetCustomSummaryValue(sender, e) /// <summary> /// 트리 리스트 커스텀 SUMMARY 값 구하기 /// </summary> /// <param name="sender">이벤트 발생자</param> /// <param name="e">이벤트 인자</param> private void treeList_GetCustomSummaryValue(object sender, GetCustomSummaryValueEventArgs e) { if(e.Column.FieldName == "Budget") { IEnumerator enumerator = e.Nodes.GetEnumerator(); int count = 0; while(enumerator.MoveNext()) { TreeListNode treeListNode = (TreeListNode)enumerator.Current; decimal budget = (decimal)treeListNode.GetValue(e.Column); if(budget > 500000) { count ++; } } e.CustomValue = count; } } #endregion |