C# menuStripのイベント処理
C#やVB.NETではmenuStripによって簡単にプルダウンメニューが
作製できる。

しかしこのクリックの処理をデザイナーのイベントハンドラを 使って処理しようとすると、メニュー毎にイベントハンドらーが出来て 非常に見にくいコードとなる。
そこでメニューのイベントハンドラを一つにして、コードを 簡素化する方法を書く。

下のようなイベントハンドラーを作成してイベントハンドラの設定画面ですべての メニューで同じイベントハンドラーを指定する。

次に各メニューのプロパティ画面でTagに順番に番号を付ける。
イベントハンドラーのコードはボタンクリックのイベントハンドラなどをコピーして 名前を変えると楽にできる。

しかしこのクリックの処理をデザイナーのイベントハンドラを 使って処理しようとすると、メニュー毎にイベントハンドらーが出来て 非常に見にくいコードとなる。
そこでメニューのイベントハンドラを一つにして、コードを 簡素化する方法を書く。

下のようなイベントハンドラーを作成してイベントハンドラの設定画面ですべての メニューで同じイベントハンドラーを指定する。

次に各メニューのプロパティ画面でTagに順番に番号を付ける。
イベントハンドラーのコードはボタンクリックのイベントハンドラなどをコピーして 名前を変えると楽にできる。
private void menu_Click(object sender, EventArgs e) { ToolStripMenuItem ms = (ToolStripMenuItem)sender; int t = int.Parse(ms.Tag.ToString()); switch (t) { case 1: /*何か処理*/ break; case 2 : /*何か処理*/ break; case 3: /*何か処理*/ break; case 4: /*何か処理*/ break; } }