我正在开发一个 Visual Studio 2010 扩展,我的窗口中已经有一个工具栏。在那个工具栏上我有一个按钮,我想给一个图标 - 我自己的图标!我读过这篇文章,它很棒,但是......它解释了如何替换图标。
我想添加一个额外的图标。
我如何做到这一点?
我正在开发一个 Visual Studio 2010 扩展,我的窗口中已经有一个工具栏。在那个工具栏上我有一个按钮,我想给一个图标 - 我自己的图标!我读过这篇文章,它很棒,但是......它解释了如何替换图标。
我想添加一个额外的图标。
我如何做到这一点?
首先,添加位图并将其构建操作设置为Resource
请记住,令人震惊的粉红色 = 透明(该死的,老派!)
然后,在您的vsct
文件中,将图像添加到位图部分
<Bitmaps>
<Bitmap guid="AddSampleData.bmpGuid"
href="..\Button Bitmaps\AddSampleData.bmp"
usedList="AddSampleData.bmpId" />
<Bitmap guid="ApplySampleData.bmpGuid"
href="..\Button Bitmaps\ApplySampleData.bmp"
usedList="ApplySampleData.bmpId" />
</Bitmaps>
并在符号节点中为其分配一个 guid
<Symbols>
<!-- snip -->
<GuidSymbol name="AddSampleData.bmpGuid"
value="{dcae7c84-8e91-4f8a-907b-95ccb0f52e6e}">
<IDSymbol name="AddSampleData.bmpId"
value="1" />
</GuidSymbol>
<GuidSymbol name="ApplySampleData.bmpGuid"
value="{9f555245-2430-4e6f-992b-b49ce87a31a2}">
<IDSymbol name="ApplySampleData.bmpId"
value="1" />
</GuidSymbol>
</Symbols>
并将其应用于按钮
<Buttons>
<!-- snip -->
<Button guid="guidEditorExtensionCommandSet"
id="setDesignTimeDataOnPage"
priority="0x0100">
<Icon guid="ApplySampleData.bmpGuid"
id="ApplySampleData.bmpId" />
<Strings>
<!-- snip -->
</Strings>
</Button>
</Buttons>
当然,它总是更容易使用可用的工具,包括优秀的VSPackage Builder 扩展。
解决方法是创建一个 PNG 并将扩展名重命名为 *.bmp。VS 将接受它作为图标图像并且它也将具有透明度(来自 Visual Studio 扩展性 >工具箱图标 - 是否支持透明度?)