えムナウのプログラミングのページ

えムナウ の とどけもの

 Logo えムナウBlog@AILight
えムナウBlog@Wankuma

目次

利用状況

イメージ ギャラリー

カテゴリ

Links
 

inetaj

MSMVPロゴ
MSMVP Visual C# 2005/01-2007/12

目次

ユーザーコントロール

サンプル2 イベントの作成


イベントの作成の例としてファンクションキーイベントを取り上げます。
[プロパティ] ウィンドウのイベント表示で設定できます。



/// <summary>
/// コントロールが初めて表示される前に発生します。
/// </summary>
/// <param name="sender">イベントの送り元。</param>
/// <param name="e">イベント データを格納している EventArgs 。</param>
private void FunctionKey_Load(object sender, System.EventArgs e)
{
        this.ParentForm.KeyPreview = true ;
        this.ParentForm.KeyDown += new System.Windows.Forms.KeyEventHandler(this.FunctionKey_KeyDown);
}

/// <summary>
/// キーが押されると発生します。
/// </summary>
/// <param name="sender">イベントの送り元。</param>
/// <param name="e">イベント データを格納している KeyEventArgs 。</param>
private void FunctionKey_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
        if ( !e.Handled )
        {
                switch ( e.KeyData ) 
                {
                case Keys.F1:
                        F01_Click(sender,e); 
                        e.Handled = true ; 
                        break ;
                }
        }
}

/// <summary>
/// ファンクションキー1のイベントハンドラです。
/// </summary>
private EventHandler onF01Click ;
/// <summary>
/// ファンクションキー1が押されたときに発生するイベントです。
/// </summary>
[Description("ファンクションキー1が押されたときに発生します。"),Category("アクション")]
public event EventHandler F01Click 
{ add { onF01Click += value; } remove { onF01Click -= value; } }
/// <summary>
/// ファンクションキー1が押されたときのイベント生成メソッドです。
/// </summary>
/// <param name="e">イベント データを格納している EventArgs 。</param>
protected virtual void OnF01Click(EventArgs e) 
{
        if (onF01Click != null) onF01Click(this, e);
}
/// <summary>
/// ファンクションキー1が押されたときに最初に受け取るメソッドです。
/// </summary>
/// <param name="sender">イベントの送り元。</param>
/// <param name="e">イベント データを格納している EventArgs 。</param>
private void F01_Click(object sender, System.EventArgs e)
{
        OnF01Click(e) ;
}