「アイテム」オブジェクトとは?
サブメニューの追加:
// new menu, if you're using designer you should have it already
ContextMenuStrip mnu = new ContextMenuStrip();
// new tool strip item
ToolStripMenuItem mnuItem1 = new ToolStripMenuItem();
mnuItem1.Text = "Some text 1";
mnuItem1.Name = "mnuItem1";
// new submenu item
ToolStripMenuItem mnuItem2 = new ToolStripMenuItem();
mnuItem2.Text = "Some text 2";
mnuItem2.Name = "mnuItem2";
// connect them...
mnuItem1.DropDownItems.Add(mnuItem2);
mnu.Add(mnuItem1);
さて、イベントへのサブスクライブの問題です。
マウスの右クリックでサブメニューが表示されるようにします。通常、サブメニューのあるアイテムの上にマウスを置くと表示されます。したがって、自分のやり方で設定する場合は、メインの toolStripItem を右クリックしたときに手動で追加する必要があると思います。
ToolStripMenuItem には MouseClick イベントがありません。MouseDown イベントでクリックされたマウス ボタンを記憶し、Click イベントで処理できます。
また、ToolStripMenuItem の 1 つのインスタンスを 1 つのメニューに複数回追加したり、同じ項目を複数のメニューに追加したりしても機能しないことに注意してください。毎回新しいアイテムを作成する必要があります。