2011-11-01 2 views
2

UltraGrid가 바인딩되는 행 수를 표시하는 가장 좋은 방법은 무엇입니까?Infragistics Ultragrid Winforms에 행 수 표시

내가 할 수있게하려면 this.UltraGrid.DataSource = myCustomObject;

그리드는 행 수와 함께 데이터를 표시해야합니다.

사용자 정의 컨트롤을 울트라 그리드 및 상태 표시 줄로 작성하려고했습니다. "InitializeRow"이벤트가 발생하면 상태 표시 줄을 rowCount로 업데이트하십시오. 이것은 내가 원하는 것을 나에게 줄 것이다. 그러나 이것은 매우 비효율적이다.

"InitializeLayout", "InitializeRowsCollection", "Enter"이벤트와 같은 다른 이벤트를 시도했지만 데이터 소스가 변경되면 이러한 이벤트가 시작되지 않습니다.

제안 사항?

답변

4

ultragrid의 SummaryDisplayArea 기능을 사용하여 더 좋은 방법을 발견했습니다. 당신이 BindingNavigator처럼 수있는 BindingSource를 사용하는 경우 InitializeLayout 이벤트에 http://help.infragistics.com/Help/NetAdvantage/WinForms/2011.1/CLR2.0/html/Infragistics2.Win.UltraWinGrid.v11.1~Infragistics.Win.UltraWinGrid.UltraGridOverride~SummaryDisplayArea.html

나는이

 e.Layout.Override.AllowRowSummaries = AllowRowSummaries.True; 

     UltraGridColumn columnToSummarize = e.Layout.Bands[0].Columns[0]; 
     SummarySettings summary = e.Layout.Bands[0].Summaries.Add("Count", SummaryType.Count, columnToSummarize); 
     summary.DisplayFormat = "Number of Rows: {0:N0}"; 

     e.Layout.Override.SummaryDisplayArea = SummaryDisplayAreas.BottomFixed; 
     e.Layout.Override.SummaryDisplayArea |= SummaryDisplayAreas.GroupByRowsFooter; 
     e.Layout.Override.SummaryDisplayArea |= SummaryDisplayAreas.InGroupByRows; 

     summary.SummaryDisplayArea = SummaryDisplayAreas.BottomFixed | SummaryDisplayAreas.GroupByRowsFooter; 
     e.Layout.Override.GroupBySummaryDisplayStyle = GroupBySummaryDisplayStyle.SummaryCells; 

     e.Layout.Override.SummaryFooterAppearance.FontData.Bold = DefaultableBoolean.True; 
     e.Layout.Override.SummaryFooterCaptionVisible = DefaultableBoolean.False; 
1

같은 것을 가지고있다.

도구 상자 (데이터 탭)에서 양식에 끌어서 BindingSource 속성을 설정할 수 있습니다. 원하는 경우 추가 및 삭제 버튼을 제거하면 다음과 같이 표시됩니다.

enter image description here

관련 문제