Imports Infragistics.Shared
Imports Infragistics.Win
Imports Infragistics.Win.UltraWinGrid
PrivateSub TraverseAllRowsHelper(ByVal startRow As UltraGridRow, ByRef rowsCount AsInteger, ByRef groupByRowsCount AsInteger)
Dim row As UltraGridRow = startRow
WhileNot row IsNothingIfTypeOf row Is UltraGridGroupByRow Then' Write code here to process the group by row.
groupByRowsCount += 1
Else' Write code here to process the regular by row.
rowsCount += 1
EndIf' If the row has any child rows, then process them too.
If row.HasChild(False) ThenMe.TraverseAllRowsHelper(row.GetChild(ChildRow.First), rowsCount, groupByRowsCount)
EndIf
row = row.GetSibling(SiblingRow.Next, True, False)
EndWhileEnd SubPrivateSub Button71_Click(ByVal sender AsObject, ByVal e As System.EventArgs) Handles button71.Click
Dim rowsCount AsInteger = 0
Dim groupByRowsCount AsInteger = 0
' Get the first row in the UltraGrid.
Dim firstRow As UltraGridRow = Me.ultraGrid1.GetRow(ChildRow.First)
' Call the helper method which is a recursive implmentation for traversing rows.
MessageBox.Show("Please wait. This operation may take a while depending on number of rows.")
Me.TraverseAllRowsHelper(firstRow, rowsCount, groupByRowsCount)
' Show a dialog showing the number of regular rows and number of group-by rows.
MessageBox.Show("The UltraGrid has " & rowsCount & " number of regular rows, and " & groupByRowsCount & " number of group-by rows.")
End Sub
using Infragistics.Shared;
using Infragistics.Win;
using Infragistics.Win.UltraWinGrid;
using System.Diagnostics;
privatevoid TraverseAllRowsHelper( UltraGridRow startRow, refint rowsCount, refint groupByRowsCount )
{
UltraGridRow row = startRow;
while ( null != row )
{
if ( row is UltraGridGroupByRow )
{
// Write code here to process the group by row.
groupByRowsCount++;
}
else
{
// Write code here to process the regular by row.
rowsCount++;
}
// If the row has any child rows, then process them too.
if ( row.HasChild( false ) )
{
this.TraverseAllRowsHelper( row.GetChild( ChildRow.First ), ref rowsCount, ref groupByRowsCount );
}
row = row.GetSibling( SiblingRow.Next, true, false );
}
}
privatevoid button71_Click(object sender, System.EventArgs e)
{
int rowsCount = 0;
int groupByRowsCount = 0;
// Get the first row in the UltraGrid.
UltraGridRow firstRow = this.ultraGrid1.GetRow( ChildRow.First );
// Call the helper method which is a recursive implmentation for traversing rows.
MessageBox.Show( "Please wait. This operation may take a while depending on number of rows." );
this.TraverseAllRowsHelper( firstRow, ref rowsCount, ref groupByRowsCount );
// Show a dialog showing the number of regular rows and number of group-by rows.
MessageBox.Show( "The UltraGrid has " + rowsCount + " number of regular rows, and " + groupByRowsCount + " number of group-by rows." );
}