Visual Studio 2008 中的工具箱图标

[本文档仅供预览,在以后的发行版中可能会发生更改。包含的空白主题用作占位符。]

可以在 Visual Studio 中包括具有自定义 Windows Presentation Foundation (WPF) 控件的工具箱图标。 本主题描述如何对工具箱图标命名以及如何将它们包括为嵌入资源。

备注

保留本主题的目的在于实现与 Visual Studio 2008 的向后兼容性。对于 Visual Studio 2010,请参见工具箱图标

支持的文件类型

下表列出了适用于 Visual Studio 的 WPF 设计器中的工具箱图标支持的文件类型。

  • XAML

  • BMP

  • GIF

  • JPG

  • JPEG

  • PNG

命名约定

通过遵循命名约定将工具箱图标与自定义控件关联。 适用于 Visual Studio 的 WPF 设计器检查控件程序集中的嵌入资源,以找到相应命名的图像文件。

在最简单的情况下,将工具箱图标图像文件作为嵌入资源添加到控件的项目中。 将它命名为 控件名称.扩展名。 WPF Designer搜索文件名与控件的类型名称匹配的资源。 有关更多信息,请参见演练:为控件创建自定义工具箱图标

备注

WPF Designer使用匹配算法找到工具箱图标的最佳资源。如果资源文件不是有效的 XAML 或图像文件,将使用下一个匹配项,直到找到一个有效的 XAML 或图像文件。XAML 图像不能包含对非系统类型的引用。

完全匹配的名称

工具箱图标命名约定支持完全匹配的资源名称。 对于完全匹配的名称,通过使用以下约定命名空间.控件名.Icon.扩展名,在工具箱图标名称中包括命名空间。 例如,考虑一个在 Proseware.Core.Controls 命名空间中定义的名为 ProseControl 的控件。 该控件的完全匹配的 PNG 工具箱图标将命名为 Proseware.Core.Controls.ProseControl.Icon.png。

对于资源,Visual Studio 自动将文件夹转换为命名空间。 因此,可以在项目中创建与您的命名空间相同的文件夹结构。 请注意文件夹会影响在其中找到嵌入资源的命名空间。在前面的示例中,如果图像文件在名为 Icons 的子文件夹中,则 WPF Designer会查找名为 Proseware.Core.Controls.Icons.ProseControl.Icon.png 的工具箱图标。

如果在定义控件的命名空间中找不到图像,则 WPF Designer将搜索松散匹配项。

松散匹配的名称

如果 WPF Designer找不到完全匹配的资源,则会在程序集的嵌入资源中查找松散匹配项。 在前面的示例中,WPF Designer首先搜索具有完全匹配的名称 Proseware.Core.Controls.ProseControl.Icon.扩展名 的文件。 如果该搜索失败,WPF Designer将忽略命名空间,而单独基于类型名查找名称。 在本示例中,WPF Designer在资源中查找名为 ProseControl.Icon.扩展名 的任何文件。如果该搜索失败,则 WPF Designer从默认命名空间开始搜索。 在本示例中,WPF Designer查找名为 Proseware.ProseControl.Icon.扩展名 的文件。

多个图像大小

您的工具箱图标图像文件名可以包括一个可选的“Icon”字段。 使用该子字符串可以为图标指定多个图像大小。

对于前面的示例中的 ProseControl 控件,WPF Designer在资源中查找以下图像,并选择最佳匹配大小。 

  • Proseware.Core.Controls.ProseControl.Icon.Large.png

  • Proseware.Core.Controls.ProseControl.Icon.Medium.png

  • Proseware.Core.Controls.ProseControl.Icon.ReallyLarge.png

也可以省略“Icon”后面的句点来指定以下文件名。

  • Proseware.Core.Controls.ProseControl.IconLarge.png

  • Proseware.Core.Controls.ProseControl.IconMedium.png

  • Proseware.Core.Controls.ProseControl.IconReallyLarge.png

WPF Designer基于以下规则选择工具箱图标。

  1. 向量 XAML。

  2. 两个维度的大小完全匹配。

  3. 基于大小和长宽比的最佳匹配。

基于位图的文件格式的推荐图像大小是 64 像素 x 64 像素。

WPF Designer和 Expression Blend 对工具箱图标使用不同的图像大小。 Expression Blend 对大图标大小使用 24x24,对小图标大小使用 12x12。 WPF Designer使用 16x16。

如果宿主需要的大小是 64x64 像素,并且 Proseware.Core.Controls.ProseControl.Icon.Large.png 是基于大小和长宽比的最佳匹配,将使用该文件。 将检查程序集中的所有图像。 如果有两个相同大小和长宽比的图像,则宿主将决定使用哪一个。

请参见

任务

演练:为控件创建自定义工具箱图标

概念

工具箱图标

其他资源

使用资源