Ich habe bereits ein Paket, das ich erstellt habe, und ich möchte ein Menü zum Code Window
Kontextmenü hinzufügen.Warum ist nicht das Kontextmenü meines vspackage
Nach ein wenig Suche fand ich mehrere Artikel, die erklären, wie es geht. Das Problem ist, kann ich es nicht bekommen ....
Hier meine Erklärungen in der vsct
Datei sind:
<Button guid="guidDALGeneratorPkgCmdSet" id="cmdidDataFlow" priority="0x0100" type="Button">
<Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_CODEWIN"/>
<CommandFlag>DynamicVisibility</CommandFlag>
<Strings>
<CommandName>cmdidDataFlow</CommandName>
<ButtonText>Show data flow</ButtonText>
</Strings>
</Button>
und die Symbole:
<GuidSymbol name="guidDALGeneratorPkgCmdSet" value="{d3269a87-a721-49a5-800b-0464fbdfd313}">
<IDSymbol name="MyMenuGroup" value="0x1020" />
<IDSymbol name="cmdidDALGenerator" value="0x0101" />
<IDSymbol name="cmdidDataFlow" value="0x0102" />
</GuidSymbol>
und hier ist, wie ich füge mein Menü in meiner Package
Klasse:
CommandID dataFlowCID = new CommandID(GuidList.guidDALGeneratorPkgCmdSet, (int)PkgCmdIDList.cmdidDataFlow);
OleMenuCommand dataFlowMenu = new OleMenuCommand(showDataFlow, dataFlowCID);
dataFlowMenu.BeforeQueryStatus += new EventHandler(dataFlowMenu_BeforeQueryStatus);
mcs.AddCommand(dataFlowMenu);
Was mache ich falsch hier? Ich muss etwas verpassen, weil fast jeder Probe (und SO zu diesem Thema beantworten) schlägt ein Menü auf diese Weise in einem Paket hinzuzufügen, .....
Was ich versucht habe:
- eine Gruppe machen zuerst dann mein Menü in dieser Gruppe hinzufügen: nicht
- Kontrolle funktionierte, wenn ich die richtige GUID (mit this trick)
- Verwendung
IDG_VS_MENU_CONTEXTMENUS
stattIDM_VS_CTXT_CODEWIN
verwende (nach einem Blick auf diesem Beitrag: Using vsx how do you create a sub menu with commands?) - das gleiche geben Eltern als ich nu, die tatsächlich auf das zweite Menü funktioniert, noch nicht angezeigt ....
- viele erfolglose googeln über mein Problem ...
auch, wie Sie Ich verwende das BeforeQueryStatus
Ereignis sehen kann, aber es nie wird gefeuert ...
Sie jemals in der Lage waren, die Lösung für Ihr Problem herauszufinden. Ich stehe vor dem gleichen Problem –
Es tut mir leid, nein, ich habe nicht ... Es war ein kleiner Teil eines großen Projekts, also habe ich einen anderen Weg gefunden, um das zu erreichen, was ich brauchte. Hast du probiert was @Marcel vorgeschlagen hat? – ppetrov
Ja, es erstellt eine Schaltfläche im Kontextmenü, kein Menü im Kontextmenü. Es war also nicht hilfreich. Meine Anforderung ist, ein Menü im Kontextmenü zu erstellen. –