2010-04-15 1 views
5

Я создал следующий файл vsct xml.Использование vsx, как вы создаете подменю с командами?

<?xml version="1.0" encoding="utf-8"?> 
<CommandTable xmlns="http://schemas.microsoft.com/VisualStudio/2005-10-18/CommandTable" xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
    <Extern href="stdidcmd.h"/> 
    <Extern href="vsshlids.h"/> 
    <Extern href="msobtnid.h"/> 
    <Commands package="guidMyVSXCommandsPkg"> 
     <Menus> 
      <Menu guid="guidMyVSXCommandsCmdSet" id="TopLevelMenu" priority="0x100" type="Menu"> 
       <Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_PROJNODE"/> 
       <Strings> 
        <MenuText>Work???</MenuText> 
        <ButtonText>FigureMain</ButtonText> 
        <CommandName>TryMainMenu</CommandName> 
       </Strings> 
      </Menu> 
     </Menus> 
     <Groups> 
      <Group guid="guidMyVSXCommandsCmdSet" id="TopLevelMenuGroup" priority="0x0600"> 
       <Parent guid="guidMyVSXCommandsCmdSet" id="TopLevelMenu"/> 
      </Group> 
     </Groups> 
     <Buttons> 
      <Button guid="guidMyVSXCommandsCmdSet" id="cmdidMyCommand" priority="0x0100" type="Button"> 
       <Parent guid="guidMyVSXCommandsCmdSet" id="TopLevelMenuGroup" /> 
       <Icon guid="guidImages" id="bmpPic1" /> 
       <Strings> 
        <CommandName>cmdidMyCommand</CommandName> 
        <ButtonText>DO SOMETHING REAL COOL!!!!!!!!</ButtonText> 
       </Strings> 
      </Button> 
     </Buttons> 
     <Bitmaps> 
      <Bitmap guid="guidImages" href="Resources\Images_32bit.bmp" usedList="bmpPic1, bmpPic2, bmpPicSearch, bmpPicX, bmpPicArrows"/> 
     </Bitmaps> 
    </Commands> 
    <Symbols> 
     <!-- This is the package guid. --> 
     <GuidSymbol name="guidMyVSXCommandsPkg" value="{70e6574c-ebed-4856-b78b-0927966cc800}" /> 

     <!-- This is the guid used to group the menu commands together --> 
     <GuidSymbol name="guidMyVSXCommandsCmdSet" value="{301c910a-65eb-42c4-bf0f-bc5aaac737f1}"> 
      <IDSymbol name="TopLevelMenu" value="0x0100" /> 
      <IDSymbol name="TopLevelMenuGroup" value="0x0200" /> 
      <IDSymbol name="cmdidMyCommand" value="0x0300" /> 
     </GuidSymbol> 
     <GuidSymbol name="guidImages" value="{1997bf57-349c-434a-ad64-32a3a65e35f3}" > 
      <IDSymbol name="bmpPic1" value="1" /> 
      <IDSymbol name="bmpPic2" value="2" /> 
      <IDSymbol name="bmpPicSearch" value="3" /> 
      <IDSymbol name="bmpPicX" value="4" /> 
      <IDSymbol name="bmpPicArrows" value="5" /> 
     </GuidSymbol> 
    </Symbols> 

</CommandTable> 

Что конечный результат я хочу видеть, когда я контекстное меню, чтобы иметь возможность

работы ??? -> ЧТО-ТО ЧТО-ТО РЕАЛЬНОЕ ОХЛАЖДЕНИЕ !!!!!!!!

ответ

13

Ваше меню должно иметь родительский набор вместо контекстного меню верхнего уровня. Например, попробуйте изменить эту строку:

<Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_PROJNODE"/> 

этой линии:

<Parent guid="guidSHLMainMenu" id="IDG_VS_CTXT_PROJECT_START"/> 

Теперь вы должны увидеть «TryMainMenu» показать рядом с «Debug» в контекстном меню узла проекта. Если вы хотите, чтобы ваше меню существовало в своей собственной группе в контекстном меню верхнего уровня, вы должны определить новую группу с родительским IDM_VS_CTXT_PROJNODE и установить для этого родителя вашего меню.

В качестве альтернативы, вы можете обнаружить, что другие существующие группы (помимо IDG_VS_CTXT_PROJECT_START), глядя на SharedCmdPlace.vsct и нахождение элементов группы со следующим родителем:

<Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_PROJNODE"/> 
+0

Я хочу дать вам еще один +1 наконечника для просмотра в SharedCmdPlace.vsct ЧРЕЗВЫЧАЙНО полезно при определении того, как структурировать мои кнопки. –

 Смежные вопросы

  • Нет связанных вопросов^_^