-1

私はそのようなコードを持っています:

    private void button1_Click(object sender, EventArgs e) {
        // Do something...
    }

    private void Form1_KeyDown(object sender, KeyEventArgs e) {
        if (e.KeyData == Keys.A) {
            // Call button1_Click.
        }
    }

Click イベントを呼び出すにはどうすればよいですか? 代わりに何を書けばいいですか

            // Call button1_Click.

ありがとうございました!

4

2 に答える 2

0

ボタン クリック イベント ハンドラーは単なるメソッドなので、次のようにするだけです。

private void Form1_KeyDown(object sender, KeyEventArgs e) {
    if (e.KeyData == Keys.A) {
        button1_Click(this, e);
    }
}

ただし、多くの場合、ロジックを別のメソッドに移動して、両方の場所から呼び出すことをお勧めします。内部のロジックを独自のメソッドにリファクタリングするbutton1_Clickことで、イベント ハンドラーのいずれかのセットからそのロジックを呼び出していることを明確にします。

于 2013-09-19T21:32:18.553 に答える