S
sh856531
Hi Guys,
Can anyone tell me why the following code doesn't work. I've spent 2 hours
trying various permutations and it's driving me mad. I don't know if it makes
any difference but I'm using VSTO (Visual Studio 2008) and I run it just by
pressing F5.
Visio pops up but no matter what I try, no menu appears! :-(
Thanks to anyone who can help me with this!
Simon
// All variables are declared at the class level
private void ThisAddIn_Startup(object sender, System.EventArgs e) {
// Base the new menu structure off of the current built in menu
structure. We need to keep a reference to this object to update the UI later
customMenuStructure = Application.BuiltInMenus;
UIObject customMenus = Application.CustomMenus;
// Get the menu set for the drawing window and add a new menu
primaryMenuSet =
Application.BuiltInMenus.MenuSets.get_ItemAtID((short)VisUIObjSets.visUIObjSetDrawing);
customMenu = primaryMenuSet.Menus.AddAt(2);
customMenu.Caption = "This is my new menu";
menuItem = customMenu.MenuItems.Add();
menuItem.Caption = "Import XML";
menuItem.AddOnName = "Whatever";
menuItem.AddOnArgs = "Whatever";
Application.SetCustomMenus(customMenuStructure);
// Apparently this is required to update the menus with our
changes
customMenuStructure.UpdateUI();
}
Can anyone tell me why the following code doesn't work. I've spent 2 hours
trying various permutations and it's driving me mad. I don't know if it makes
any difference but I'm using VSTO (Visual Studio 2008) and I run it just by
pressing F5.
Visio pops up but no matter what I try, no menu appears! :-(
Thanks to anyone who can help me with this!
Simon
// All variables are declared at the class level
private void ThisAddIn_Startup(object sender, System.EventArgs e) {
// Base the new menu structure off of the current built in menu
structure. We need to keep a reference to this object to update the UI later
customMenuStructure = Application.BuiltInMenus;
UIObject customMenus = Application.CustomMenus;
// Get the menu set for the drawing window and add a new menu
primaryMenuSet =
Application.BuiltInMenus.MenuSets.get_ItemAtID((short)VisUIObjSets.visUIObjSetDrawing);
customMenu = primaryMenuSet.Menus.AddAt(2);
customMenu.Caption = "This is my new menu";
menuItem = customMenu.MenuItems.Add();
menuItem.Caption = "Import XML";
menuItem.AddOnName = "Whatever";
menuItem.AddOnArgs = "Whatever";
Application.SetCustomMenus(customMenuStructure);
// Apparently this is required to update the menus with our
changes
customMenuStructure.UpdateUI();
}