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

我正在开发一个Excel 2003插件,并试图做我自己的菜单,如下所示:

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

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

任何想法为什么?

你将不得不在你自己的代码中保持对菜单项的引用。 否则,只要“菜单添加”方法退出,菜单项就会被销毁。

所以试试这个:

 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上的这篇文章 。