複数ボタンで同クリックイベント処理後、処理分岐の方法
久々に更新。
今日、仕事帰りに同僚に
「複数のボタンを同じクリックイベントで呼び出して、共通処理をしたあと、
それぞれのボタンごとの処理を行うときに、どのボタンを押したか、
どうやって判断すれば良い?」
と聞かれた。
「e辺りが持ってんじゃないの?」と適当に答えてしまったが、
気になって、帰宅後、実験したら全くの見当違い。
private void button1_Click(object sender, EventArgs e)
{
共通処理;
if (sender.Equals(this.button2 ) )
{
button2特有の処理;
}
if (sender.Equals(this.button3 ) )
{
button3特有の処理;
}
}
sender →このイベントを呼び出したオブジェクト
e →このイベント処理に必要なデータ
ですもんねー。
イベントの引数の意味が自分はちゃんとわかっていなかったと反省。
この点をしっかり記憶しておこう。