public void AddMenuItem(string textLevel1, string textLevel2, string textLevel3, EventHandler callback) { if (textLevel1 == null) { throw new ArgumentNullException("textLevel1"); } if (this.InvokeRequired) { AddMenuItemCallback addMenuItemCallback = new AddMenuItemCallback(this.AddMenuItem); Invoke(addMenuItemCallback, new object[] { textLevel1, textLevel2, textLevel3, callback }); } else { ToolStripMenuItem menuItemLevel1 = null; foreach (ToolStripMenuItem item in mainMenuStrip.Items) if (textLevel1 == item.Text) { menuItemLevel1 = item; break; } if (menuItemLevel1 == null) { menuItemLevel1 = new ToolStripMenuItem(textLevel1); mainMenuStrip.Items.Add(menuItemLevel1); if ((textLevel2 == null) || (textLevel2 == string.Empty)) { menuItemLevel1.Click += callback; return; } } ToolStripMenuItem menuItemLevel2 = GetMenuItem(menuItemLevel1, textLevel2, textLevel3, callback); GetMenuItem(menuItemLevel2, textLevel3, null, callback); } }
private void AddMenuItem(Form form, string textLevel1, string textLevel2, string textLevel3, EventHandler callback) { if (form == null) { throw new ArgumentNullException("form"); } if (textLevel1 == null) { throw new ArgumentNullException("textLevel1"); } if (form.InvokeRequired) { AddMenuItemCallback addMenuItemCallback = new AddMenuItemCallback(this.AddMenuItem); form.Invoke(addMenuItemCallback, new object[] { form, textLevel1, textLevel2, textLevel3, callback }); } else if (form.MainMenuStrip == null) { l.Error("form.MainMenuStrip == null"); } else { if (this.openWealthItem == null) { foreach (ToolStripMenuItem mainItem in form.MainMenuStrip.Items) { if (mainItem.Text == "O&penWealth") { this.openWealthItem = mainItem; break; } } if (this.openWealthItem == null) { int toolsIndex = 0; while (toolsIndex < form.MainMenuStrip.Items.Count) { if (form.MainMenuStrip.Items[toolsIndex].Text == "W&orkspaces") { break; } toolsIndex++; } openWealthItem = new ToolStripMenuItem("O&penWealth"); form.MainMenuStrip.Items.Insert(toolsIndex, this.openWealthItem); } c } ToolStripMenuItem menuItem1 = GetMenuItem(openWealthItem, textLevel1, textLevel2, callback); ToolStripMenuItem menuItem2 = GetMenuItem(menuItem1, textLevel2, textLevel3, callback); GetMenuItem(menuItem2, textLevel3, null, callback); } }
public void AddMenuItem(string textLevel1, string textLevel2, string textLevel3, EventHandler callback) { if (textLevel1 == null) { throw new ArgumentNullException("textLevel1"); } if (this.InvokeRequired) { AddMenuItemCallback addMenuItemCallback = new AddMenuItemCallback(this.AddMenuItem); Invoke(addMenuItemCallback, new object[] { textLevel1, textLevel2, textLevel3, callback }); } else { ToolStripMenuItem menuItemLevel1 = null; foreach (ToolStripMenuItem item in mainMenuStrip.Items) { if (textLevel1 == item.Text) { menuItemLevel1 = item; break; } } if (menuItemLevel1 == null) { menuItemLevel1 = new ToolStripMenuItem(textLevel1); mainMenuStrip.Items.Add(menuItemLevel1); if ((textLevel2 == null) || (textLevel2 == string.Empty)) { menuItemLevel1.Click += callback; return; } } ToolStripMenuItem menuItemLevel2 = GetMenuItem(menuItemLevel1, textLevel2, textLevel3, callback); GetMenuItem(menuItemLevel2, textLevel3, null, callback); } }
private void AddMenuItem(Form form, string textLevel1, string textLevel2, string textLevel3, EventHandler callback) { if (form == null) { throw new ArgumentNullException("form"); } if (textLevel1 == null) { throw new ArgumentNullException("textLevel1"); } if (form.InvokeRequired) { AddMenuItemCallback addMenuItemCallback = new AddMenuItemCallback(this.AddMenuItem); form.Invoke(addMenuItemCallback, new object[] { form, textLevel1, textLevel2, textLevel3, callback }); } else if (form.MainMenuStrip == null) { l.Error("form.MainMenuStrip == null"); } else { if (this.openWealthItem == null) { foreach (ToolStripMenuItem mainItem in form.MainMenuStrip.Items) { if (mainItem.Text == "O&penWealth") { this.openWealthItem = mainItem; break; } } if (this.openWealthItem == null) { int toolsIndex = 0; while (toolsIndex < form.MainMenuStrip.Items.Count) { if (form.MainMenuStrip.Items[toolsIndex].Text == "W&orkspaces") { break; } toolsIndex++; } openWealthItem = new ToolStripMenuItem("O&penWealth"); form.MainMenuStrip.Items.Insert(toolsIndex, this.openWealthItem); }c } ToolStripMenuItem menuItem1 = GetMenuItem(openWealthItem, textLevel1, textLevel2, callback); ToolStripMenuItem menuItem2 = GetMenuItem(menuItem1, textLevel2, textLevel3, callback); GetMenuItem(menuItem2, textLevel3, null, callback); } }