VSTO使用C#将菜单项添加到Excel 2003

时间:2009-05-12 03:43:21

标签: c# .net excel vsto

我正在开发一个Excel 2003附加组件并试图创建我自己的菜单:

Application.ScreenUpdating = true;
Application.MenuBars.Add("MyMenu");
Application.MenuBars["MyMenu"].Menus.Add("MyMenuItem1", null, null);

它似乎运行得很好但我根本看不到我的菜单。

任何想法为什么?

1 个答案:

答案 0 :(得分:3)

您必须在自己的代码中保留对菜单项的引用。否则,只要退出“菜单添加”方法,菜单项就会被销毁。

所以试试这个:

class MyAddin {

     private Office.CommandBarButton myMenuItem;

     private void AddMenuItem() 
     {
         Application.ScreenUpdating = true;
         Application.MenuBars.Add("MyMenu");
         myMenuItem = Application.MenuBars["MyMenu"].Menus.Add("MyMenuItem1", null, null);
     }
}

有关详细信息,请参阅MSDN上的this article