'宣言 Public Overloads Overridable Function PerformAction( _ ByVal actionCode As UltraGridAction, _ ByVal shift As Boolean, _ ByVal control As Boolean _ ) As Boolean
public virtual bool PerformAction( UltraGridAction actionCode, bool shift, bool control )
このメソッドは、ユーザーが実行できるアクションをシミュレートするために使用します。
アクションの多くは、特定の状況においてのみ適切です。アクションが不適切な場合、そのアクションは実行されません。たとえば、DeleteRows アクション (37 - KeyActionDeleteRows) を実行することによって行を削除しようとしても、行が選択されていない場合には、何の影響もありません。同様に、ドロップダウン切り替え動作 (14 - KeyActionToggleDropdown) を実行してセルのドロップダウンリストを切り替える操作は、列がそれに関連付けられたドロップダウンを持たない場合は無視されます。
CurrentState プロパティを使用して、アクションが実行されようとしているときにコントロールの状態を決定します。
Imports Infragistics.Win.UltraWinGrid Private Sub button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button1.Click Dim state As UltraGridState ' グリッドの現在の状態を取得します state = Me.ultraGrid1.CurrentState ' 状態ビット フラグをチェックし、InEdit ビットが設定されているかどうかを確認します If ((state And UltraGridState.InEdit) = 0) Then ' 編集モードではないため、 ' セルが選択されるかどうかを決めるビットを確認しますセルが選択されていれば ' PerformAction を呼び出して編集モードを開始します If ((state And UltraGridState.Cell) = UltraGridState.Cell) Then Me.ultraGrid1.PerformAction(UltraGridAction.EnterEditMode) End If End If ' 注: この概念は UltraCombo コントロールにも適用されますが、 ' コンボの KeyActionMappings は ' マッピング クラス、関連付けられた状態および操作フラグの ' コレクションです ' (ComboKeyActionMapping、UltraComboAction、および ' UltraComboState など) End Sub
using Infragistics.Win.UltraWinGrid; private void button1_Click(object sender, System.EventArgs e) { // グリッドの現在の状態を取得します UltraGridState state = this.ultraGrid1.CurrentState; // 状態ビット フラグをチェックし、InEdit ビットが設定されているかどうかを確認します if ( ( state & UltraGridState.InEdit ) == 0 ) { // 編集モードではないため、 // セルが選択されるかどうかを決めるビットを確認しますセルが選択されていれば // PerformAction を呼び出して編集モードを開始します if ( ( state & UltraGridState.Cell ) == UltraGridState.Cell ) this.ultraGrid1.PerformAction( UltraGridAction.EnterEditMode ); } // 注: この概念は UltraCombo コントロールにも適用されますが、 // コンボの KeyActionMappings は // マッピング クラス、関連付ける状態および操作フラグの // コレクションです // (ComboKeyActionMapping、UltraComboAction、および // UltraComboState など) }