Imports Infragistics.Win
Imports Infragistics.Win.UltraWinGrid
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
If Me.ultraGrid1.ActiveRow Is Nothing Then Return
Dim eventManager As GridEventManager
' グリッドのイベント マネージャを取得します。
' ここでは、イベントの発生を防ぐため、イベント マネージャを使用して
' イベントを一時的に無効にしています。これは、
' ひとつ以上のプロパティがコード内に設定されていて、
' 通常どおりイベントが発生すると不要なコードや
' 意図とは逆の結果を招くコードが実行される場合に
' 役立ちます。
'
' 注:デフォルトでは、すべてのイベントが有効になっています。
eventManager = Me.ultraGrid1.EventManager
' Before/AfterSelectChange イベントを無効にします。
eventManager.SetEnabled(GridEventIds.BeforeSelectChange, False)
eventManager.SetEnabled(GridEventIds.AfterSelectChange, False)
' アクティブ行の選択状態を切り替えます。
' 注:アクティブ行の選択状態を切り替えると、通常は Before/AfterSelectChange
' イベントが発生します。ただし、上記のコードによってイベントが無効になっているため、
' Before/AfterSelectChange イベントは発生しません。
Me.ultraGrid1.ActiveRow.Selected = Not Me.ultraGrid1.ActiveRow.Selected
' Before/AfterSelectChange イベントを再び有効にします。
eventManager.SetEnabled(GridEventIds.BeforeSelectChange, True)
eventManager.SetEnabled(GridEventIds.AfterSelectChange, True)
' AllEventsEnabled プロパティを使用すると、1 行のコードですべてのイベントを
' 有効/無効に設定できます。イベントがすべて無効の場合、
' AllEventsEnabled プロパティは False を返します。
If eventManager.AllEventsEnabled = False Then
eventManager.AllEventsEnabled = True
End If
' イベントが有効か無効かを確認する手段として、
' 'IsEnabled' メソッドも提供されます。
If False = eventManager.IsEnabled(GridEventIds.BeforeSelectChange) Then
eventManager.SetEnabled(GridEventIds.BeforeSelectChange, True)
End If
' また、グリッド イベント マネージャは、オーバーロードされた 'IsEnabled' および 'SetEnabled' メソッドも公開します。
' これらのメソッドはイベント グループを取得し、
' たとえば 'Before' イベントや 'After' イベントをすべて一度に有効/無効
' にできます。グループ内の
' イベントがすべて無効の場合、'IsEnabled' メソッドは false を
' 返します。
If False = eventManager.IsEnabled(EventGroups.BeforeEvents) Then
eventManager.SetEnabled(EventGroups.BeforeEvents, True)
End If
eventManager.SetEnabled(EventGroups.AfterEvents, True)
' 'InProgress' メソッドは、指定されたイベントが現在発生している
' 場合に true を返します。これは
' アプリケーションのさまざまの箇所から呼び出せるメソッドで、
' 呼び出し元を特定する際に
' 役立つ場合があります。
If eventManager.InProgress(GridEventIds.BeforeSelectChange) Then
' ...
End If
' UltraCombo および UltraDropDown コントロールは、
' カスタム イベント用のイベント マネージャも提供します。ただし、
' カスタム イベント マネージャにはイベントが少ないため、
' イベントのグループを制御する、オーバーロードされた
' 'IsEnabled' および 'SetEnabled' メソッドは提供されません。
Dim comboManager As ComboEventManager
comboManager = Me.ultraCombo1.EventManager
comboManager.SetEnabled(ComboEventIds.BeforeDropDown, True)
Dim dropDownManager As DropDownEventManager
dropDownManager = Me.UltraDropDown1.EventManager
dropDownManager.SetEnabled(DropDownEventIds.AfterCloseUp, True)
End Sub