ExpandAll メソッドは、バンドの子行すべてを展開します。行に子行がある場合はそれらも展開され、この操作が階層の最下層まで続けられます。
ExpandAll メソッドを呼び出すと、バンド内のすべての行で BeforeRowExpanded イベントが発生します。このイベントでは行の展開をキャンセルできます。イベントがキャンセルされなかった行は、その子行と共に展開されます。子行に子行がある場合はそれらも展開され、この操作が階層の最下層まで続けられます。ユーザーがそれまでに子行を展開または縮小したことによって累積されたコンテキスト情報はすべて破棄されます。
Expanded プロパティを使用すると、下位の行を展開せずに特定の行を展開または縮小できます。
recursive パラメーターを受け取る RowsCollection.ExpandAll メソッドを使用すると、recursive パラメーターの値に従って、行コレクションの直下の子のみを展開したり、すべての子孫行を展開したりできます。
CollapseAll メソッドを呼び出すと、すべての子孫行を縮小できます。
Imports Infragistics.Shared Imports Infragistics.Win Imports Infragistics.Win.UltraWinGrid Private toggleFlag As Boolean = False Private Sub Button109_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles button109.Click Dim row As UltraGridRow = Me.UltraGrid1.ActiveRow ' If there is no active row, then use the first row. If row Is Nothing Then row = Me.ultraGrid1.Rows(0) End If ' Toggle the flag. Me.toggleFlag = Not Me.toggleFlag If Me.toggleFlag Then ' Call ExpandAll to expand the row and it's descendant rows recursively. row.ExpandAll() Else ' Call CollapseAll to collapse the row and it's descendant rows recursively. row.CollapseAll() End If End Sub
using Infragistics.Shared; using Infragistics.Win; using Infragistics.Win.UltraWinGrid; using System.Diagnostics; private bool toggleFlag = false; private void button109_Click(object sender, System.EventArgs e) { UltraGridRow row = this.ultraGrid1.ActiveRow; // If there is no active row, then use the first row. if ( null == row ) row = this.ultraGrid1.Rows[0]; // Toggle the flag. this.toggleFlag = !this.toggleFlag; if ( this.toggleFlag ) { // Call ExpandAll to expand the row and it's descendant rows recursively. row.ExpandAll( ); } else { // Call CollapseAll to collapse the row and it's descendant rows recursively. row.CollapseAll( ); } }