'宣言 Public Delegate Sub BeforeGroupPosChangedEventHandler( _ ByVal sender As Object, _ ByVal e As BeforeGroupPosChangedEventArgs _ )
public delegate void BeforeGroupPosChangedEventHandler( object sender, BeforeGroupPosChangedEventArgs e )
Imports Infragistics.Shared Imports Infragistics.Win Imports Infragistics.Win.UltraWinGrid Private Sub UltraGrid1_BeforeGroupPosChanged(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.BeforeGroupPosChangedEventArgs) Handles ultraGrid1.BeforeGroupPosChanged ' ユーザーがグループを移動、切り替え、サイズ変更するときに BeforeGroupPosChanged を ' 発生しますこのイベントでは、ユーザー操作をキャンセルできます If PosChanged.Moved = e.PosChanged Then ' 1 つ以上のグループが移動されています Dim groupList As String = "" Dim i As Integer For i = 0 To e.GroupHeaders.Length - 1 If i > 0 Then groupList = groupList & ", " groupList = groupList + e.GroupHeaders(i).Caption Next Dim result As DialogResult = MessageBox.Show( _ "You are about to move " & groupList & " groups. Do you want to continue ?", _ "Confirm", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If DialogResult.No = result Then ' 移動をキャンセルするには、イベント引数の Cancel を設定します e.Cancel = True End If ElseIf PosChanged.Swapped = e.PosChanged Then ' 2 つのグループが入れ替えられています Dim result As DialogResult = MessageBox.Show( _ "You are about to swap " & e.GroupHeaders(0).Caption & " with " _ & e.GroupHeaders(1).Caption & " Do you want to continue ?", _ "Confirm", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If DialogResult.No = result Then ' 移動をキャンセルするには、イベント引数の Cancel を設定します e.Cancel = True End If ElseIf PosChanged.Sized = e.PosChanged Then ' グループのサイズが変更されています ' グループのサイズが変更されているときに、e.GroupHeaders はサイズを変更されている ' 列ヘッダーを含みます Debug.WriteLine("User is about to resize " & e.GroupHeaders(0).Caption & " group.") End If End Sub
using Infragistics.Shared; using Infragistics.Win; using Infragistics.Win.UltraWinGrid; using System.Diagnostics; private void ultraGrid1_BeforeGroupPosChanged(object sender, Infragistics.Win.UltraWinGrid.BeforeGroupPosChangedEventArgs e) { // ユーザーがグループを移動、入れ替え、またはサイズ変更するときに BeforeGroupPosChanged を // 発生しますこのイベントでは、ユーザー操作をキャンセルできます if ( PosChanged.Moved == e.PosChanged ) { // 1 つ以上のグループが移動されています string groupList = ""; for ( int i = 0; i < e.GroupHeaders.Length; i++ ) { if ( i > 0 ) groupList = groupList + ", "; groupList = groupList + e.GroupHeaders[i].Caption; } DialogResult result = MessageBox.Show( "You are about to move " + groupList + " groups. Do you want to continue ?", "Confirm", MessageBoxButtons.YesNo, MessageBoxIcon.Question ); if ( DialogResult.No == result ) { // 移動をキャンセルするには、イベント引数の Cancel を設定します e.Cancel = true; } } else if ( PosChanged.Swapped == e.PosChanged ) { // 2 つのグループが入れ替えられています DialogResult result = MessageBox.Show( "You are about to swap " + e.GroupHeaders[0].Caption + " with " + e.GroupHeaders[1].Caption + " Do you want to continue ?", "Confirm", MessageBoxButtons.YesNo, MessageBoxIcon.Question ); if ( DialogResult.No == result ) { // 移動をキャンセルするには、イベント引数の Cancel を設定します e.Cancel = true; } } else if ( PosChanged.Sized == e.PosChanged ) { // グループのサイズが変更されています // グループのサイズが変更されているときに、e.GroupHeaders はサイズが変更されている // 列ヘッダーを含みます Debug.WriteLine( "User is about to resize " + e.GroupHeaders[0].Caption + " group." ); } }