PowerTools InputMan for Windows Forms 8.0J
KeyExit イベント
使用例 

キーボードを使ってフォーカスを移動したときに発生します。
構文
Public Event KeyExit As KeyExitEventHandler
public event KeyExitEventHandler KeyExit
イベント データ

イベント ハンドラが、このイベントに関連するデータを含む、KeyExitEventArgs 型の引数を受け取りました。次の KeyExitEventArgs プロパティには、このイベントの固有の情報が記載されます。

プロパティ解説
KeyKeyExit イベントを発生させたキーを取得します。  
解説
KeyExit イベントは、[→]、[←]、[Ctrl]+[→]、[Ctrl]+[←]、[Tab]、[Shift]+[Tab]の各キー、 またはGcShortcutクラスを用いて割り当てたショートカットキーを使用して、 フォーカスを前後のコントロールに移動したときに発生します。
使用例
次のコードは KeyExit イベントを発生させる方法を示します。この例では、 KeyExit イベントと連携するイベント処理を呼び出します。
//  Please use the following namespace
//  using System.Windows.Forms;
//  using GrapeCity.Win.Editors;

public void WireKeyExitEvent()
{
    GcTextBox gcTextBox1 = new GcTextBox();
    // Set the maximum length limit.
    gcTextBox1.MaxLength = 10;
    // Move focus to next control when input chars that exceed the maximum length limit. 
    gcTextBox1.ExitOnLastChar = true;
    gcTextBox1.KeyExit += new KeyExitEventHandler(OnTextBoxKeyExit);
}

private void OnTextBoxKeyExit(object sender, KeyExitEventArgs e)
{
    if (e.Key == ExitKeys.CharInput)
    {
        // Validate the text of the control only when input chars that exceed the maximum length limit.
        EditBase editor1 = sender as EditBase;
        if (editor1 != null)
        {
            if (!editor1.Text.StartsWith("ID_"))
            {
                editor1.Clear();
            }
        }
    }
}
'  Please use the following namespace
'  Imports System.Windows.Forms;
'  Imports GrapeCity.Win.Editors;

Public Sub WireKeyExitEvent()
    Dim gcTextBox1 As New GcTextBox()
    ' Set the maximum length limit.
    gcTextBox1.MaxLength = 10
    ' Move focus to next control when input chars that exceed the maximum length limit. 
    gcTextBox1.ExitOnLastChar = True
    AddHandler gcTextBox1.KeyExit, AddressOf OnTextBoxKeyExit
End Sub

Private Sub OnTextBoxKeyExit(ByVal sender As Object, ByVal e As KeyExitEventArgs)
    If e.Key = ExitKeys.CharInput Then
        ' Validate the text of the control only when input chars that exceed the maximum length limit.
        Dim editor1 As EditBase = TryCast(sender, EditBase)
        If (Not editor1 Is Nothing) Then
            If Not editor1.Text.StartsWith("ID_") Then
                editor1.Clear()
            End If
        End If
    End If
End Sub
参照

EditBase クラス
EditBase メンバ

 

 


© 2004-2015 GrapeCity inc. All rights reserved.