如何添加嵌套上下文菜单- visual studio插件

本文关键字:菜单 visual studio 插件 上下文 嵌套 何添加 添加 | 更新日期: 2023-09-27 18:18:35

我创建了Visual Studio 2015的扩展,看起来像这样

但我想把所有的四个菜单在一个类别说我的组。应该是这样的

  • 我的组[点击这个,其余的子菜单应该是一样的,如图所示]
    • 菜单一个
    • 两个<<li>菜单/gh>

我的vsct文件看起来像这样

<Commands package="package">    
    <Groups>
      <Group guid="PackageCmdSet" id="MenuGroup" priority="0x0300">
        <Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_ITEMNODE"/>
      </Group>
      <Group guid="ClassPackageCmdSet" id="ProjectMenuGroup" priority="0x0400">
        <Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_PROJNODE"/>
      </Group>
    </Groups>

还有像这样的按钮

 <Buttons>    
      <Button guid="PackageCmdSet" id="BranchModelClassId" priority="0x0100" type="Button" >
        <Parent guid="PackageCmdSet" id="MenuGroup" />
        <Icon guid="guidImages" id="bmpPic1" />
        <CommandFlag>DynamicVisibility</CommandFlag>
        <Strings>
          <CommandName>Test</CommandName>
          <ButtonText>Test</ButtonText>
        </Strings>
      </Button>

如何创建一个嵌套菜单,我在第二张图片中显示?

请帮帮我。

如何添加嵌套上下文菜单- visual studio插件

我终于找到了方法。更改必须在vsct文件中完成。

首先在Commands

中添加菜单
  <Menus>
      <Menu guid="PackageCmdSet" id="MainMenu" priority="0x0100" type="Menu">
        <Parent guid="PackageCmdSet" id="MenuGroup" />
        <Strings>
          <ButtonText>Nested Menu</ButtonText>
        </Strings>
      </Menu>
 <Menus>

然后添加组

<Groups>
      <Group guid="PackageCmdSet" id="MenuGroup" priority="0x0200">
        <Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_ITEMNODE"/>
      </Group>
      <Group guid="PackageCmdSet" id="CommandsMenuGruop" priority="0x0300">
        <Parent guid="PackageCmdSet" id="MainMenu"/>
      </Group>
  <Groups>

按钮应该是这样的

 <Buttons>
      <Button guid="PackageCmdSet" id="ClassId" priority="0x0100" type="Button">
        <Parent guid="PackageCmdSet" id="CommandsMenuGruop" />
        <Icon guid="guidImages" id="bmpPic1" />
        <CommandFlag>DynamicVisibility</CommandFlag>
        <Strings>
          <CommandName>Command</CommandName>
          <ButtonText>Item 1</ButtonText>
        </Strings>
      </Button>
  <Buttons>