2016-12-09 19 views
0

if (e.KeyCode == Keys.Enter)イベントプロセスを実行することができますか?他のイベント条件からイベント実装を実行する方法

私が結果を得るために知っている唯一の方法は、実装されていると便利なことですが、関数の中で条件の内容を見つけることですが、他の方法が可能かどうか尋ねています。

textBox2_TextChangedイベント条件から、if (e.KeyCode == Keys.Enter) eventtextBox1_KeyDownの実装には、テキストが存在し、プロセス実装が含まれていますか?例えば

private void textBox1_KeyDown(object sender, KeyEventArgs e) 
{ 
    /// code 

    if (e.KeyCode == Keys.Enter) 
    { 
     label1.Text = ("text inserted"); 
    } 
} 

と所望の結果がここにtextBox2_TextChangedtextBox1_KeyDownからlabel1.Text = ("text inserted");(e.KeyCode == Keys.Enter)実装を呼び出すことです:

private void textBox2_TextChanged(object sender, EventArgs e) 
{ 
    if (x > 0) 
    { 
     /// here I want implement if (e.KeyCode == Keys.Enter) from code above with label1.Text = ("text inserted");  
    } 
} 
+0

が好きなことができます仕事をセパレートに移すことです関数を呼び出し、各イベントハンドラから新しい関数を呼び出します。これは本当にこの種の問題を解決する正しい方法です。より読みやすくメンテナンス性が高く、懸念事項の分離が容易です。 – PMV

答えて

2

あなたがより良いアプローチこの

private void textBox1_KeyDown(object sender, KeyEventArgs e) 
    { 
     if (e.KeyCode == Keys.Enter) 
     { 
      label1.Text = ("text inserted"); 
     } 

    } 

    private void textBox2_TextChanged(object sender, EventArgs e) 
    { 
     KeyEventArgs ev = new KeyEventArgs(Keys.Enter); 
     textBox1_KeyDown(sender, ev); 
    } 
+0

はい、これは私が探しているものです、ありがとう – nikorio

関連する問題