如果想要展示在vs的下面这些菜单里面 , 直接可以用上面的方式 修改id就可以了
![visual studio插件开发-Menu](http://img.zhejianglong.com/231019/0402594215-11.png)
文章插图
-》vs的最上面一排菜单#define IDM_VS_MENU_FILE 0x0080#define IDM_VS_MENU_EDIT 0x0081#define IDM_VS_MENU_VIEW 0x0082#define IDM_VS_MENU_PROJECT 0x0083#define IDM_VS_MENU_TOOLS 0x0085#define IDM_VS_MENU_WINDOW 0x0086#define IDM_VS_MENU_ADDINS 0x0087#define IDM_VS_MENU_HELP 0x0088#define IDM_VS_MENU_DEBUG 0x0089#define IDM_VS_MENU_FORMAT 0x008A#define IDM_VS_MENU_ALLMACROS 0x008B#define IDM_VS_MENU_BUILD 0x008C#define IDM_VS_MENU_CONTEXTMENUS 0x008D#define IDG_VS_MENU_CONTEXTMENUS 0x008E#define IDM_VS_MENU_REFACTORING 0x008f#define IDM_VS_MENU_COMMUNITY 0x0090#define IDM_VS_MENU_EXTENSIONS 0x0091-》 工程文件右键菜单 对应上图的13#define IDM_VS_CTXT_PROJNODE 0x0402-》代码窗口的右键菜单操作 对应上图的14#define IDM_VS_CTXT_CODEWIN 0x040D-》解决方案的右键菜单操作 对应上图的15#define IDM_VS_CTXT_SOLNNODE 0x0413-》 某个文件的右键菜单 这个也经常用#define IDM_VS_CTXT_ITEMNODE 0x0430
各个含义说明也可以参考文档:https://learn.microsoft.com/en-us/visualstudio/extensibility/internals/guids-and-ids-of-visual-studio-menus?view=vs-2022
比如我把上面的demo改成这样
<Groups> <Group guid="guidMenuDemoVSIXPackageCmdSet" id="MyMenuGroup" priority="0x0600"> <!-- 工程文件右键菜单 --> <Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_PROJNODE"/> </Group></Groups>
![visual studio插件开发-Menu](http://img.zhejianglong.com/231019/0402592518-12.png)
文章插图
<Groups> <Group guid="guidMenuDemoVSIXPackageCmdSet" id="MyMenuGroup" priority="0x0600"> <!-- 代码窗口的右键菜单操作 --> <Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_CODEWIN"/> </Group></Groups>
![visual studio插件开发-Menu](http://img.zhejianglong.com/231019/040259D47-13.png)
文章插图
二级菜单这里需要添加Menu了 且 一级菜单项要定义为Menu而不是Button?。?
先新建一个group1以**右键菜单为parent(已知定义ID)**,以group1为parent , 再定义一个group2以一级菜单Menu为parent,再将二级菜单项定义为Button并以group2为parent
有点绕吧,比如我要在工程文件的右键菜单 添加一个二级菜单,像下面这样子
![visual studio插件开发-Menu](http://img.zhejianglong.com/231019/0402591155-14.jpg)
文章插图
- 在Groups节点下新建一个group:MyMenuGroup1 以工程右键菜单为parent
<Group guid="guidMenuDemoVSIXPackageCmdSet" id="MyMenuGroup1" priority="0x0600"> <!--定义在头文件的已知定义ID --> <Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_PROJNODE"/></Group>
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 【pytest官方文档】解读-开发可pip安装的第三方插件
- 提高工作效率的神器:基于前端表格实现Chrome Excel扩展插件
- 苹果手机红包秒收怎么设置(苹果红包插件黑科技)
- 从0开始写一个简单的vite hmr 插件
- 钩子 【pytest官方文档】解读-插件开发之hooks 函数
- 插件化编程之WebAPI统一返回模型
- 超详细 R及R Studio下载安装教程
- 浅谈 Golang 插件机制
- .net程序员的android studio 初体验 (环境设置2022年10月)
- 中 ?打造企业自己代码规范IDEA插件