1

拡張機能のツールバー(たとえば、開く、保存する、実行する、アイコンを中断する)でVisual Studioのビルトインアイコンのいくつかを使用するには、Visual Studioの拡張機能でビルトインアイコンを使用する

私はこのように私のVSCTファイルで、このようなstdidcmd.hからcmdidSaveなどの定数を使用して試してみました:

<Button guid="guidBBTWindowPackageCmdSet" id="cmdidMyButton1" priority="0x0101" type="Button"> 
    <Parent guid="guidBBTWindowPackageCmdSet" id="ToolbarGroupID"/> 
    <Icon guid="CMDSETID_StandardCommandSet14" id="cmdidSave" /> 
    <Strings> 
     <CommandName>cmdidMyCommand1</CommandName> 
     <ButtonText>Load File</ButtonText> 
    </Strings> 
</Button> 

しかし、それはアイコンが表示されません。代わりに、ボタンをテキストスタイルで表示し始めます(画像の代わりにテキストキャプション)。

一方、「画像ストリップ方式」(デフォルトの拡張テンプレートのように)を使用するとうまくいきますが、それは私がしたいことではありません。

答えて

3

OK。 、あなたのVSCTファイルの先頭に

この参照が含ま:

<Include href="KnownImageIds.vsct"/> 

のVisual Studio(VS2015コミュニティアップデート3のように)このファイルがどこにあるか知っているので、ここでは、誰もが苦労している場合です。

ImageCatalogGuid<Icon>というノードのGUIDとして使用します。 Visual Studio Intellisenseは選択可能なすべてのアイコンを一覧表示します(あなたはそれを期待していませんでした!)。

<Button guid="guidCommand1PackageCmdSet" id="Command1Id" priority="0x0100" type="Button"> 
    <Parent guid="guidCommand1PackageCmdSet" id="MyMenuGroup" /> 
    <Icon guid="ImageCatalogGuid" id="CacheRefresh" /> 
    <CommandFlag>IconIsMoniker</CommandFlag> 
    <Strings> 
    <ButtonText>Invoke Command1</ButtonText> 
    </Strings> 
</Button> 

余分な行は、<CommandFlag>IconIsMoniker</CommandFlag>です。これは、<Icon>行の直後に含める必要があります。

関連する問題