工具箱图标

可以在 Visual Studio 和 Expression Blend 中的自定义 WPF 和 Silverlight 控件中引入工具箱图标。 本主题描述如何对工具箱图标命名以及如何将它们包括为嵌入资源。

支持的文件类型

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

  • BMP

  • GIF

  • JPG

  • JPEG

  • PNG

提示

Expression Blend 仅支持 .png 文件。

命名约定

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

在最简单的情况下,将工具箱图标图像文件作为嵌入资源添加到控件的项目中。 将它命名为 控件名称.扩展名,然后在“属性”窗口中,将它的**“生成操作”设置为“嵌入的资源”**。 WPF 设计器搜索文件名与控件的类型名称匹配的资源。 有关更多信息,请参见演练:为控件创建自定义工具箱图标

提示

为了实现向后兼容,Visual Studio 2010 支持由 Visual Studio 2008 使用的命名约定。 有关更多信息,请参见Visual Studio 2008 中的工具箱图标

Visual Studio 2010 支持下面的工具箱图标命名约定。 方括号 ([]) 中的子字符串是可选的。

[任意字符串]命名空间.控件名称[.产品][.任意字符串].扩展名

当设计器搜索工具箱图标时,它会对命名空间、控件名称 和产品 子字符串进行匹配。 如果命名空间 和控件名称 与您的控件不匹配,图标不会显示在工具箱中。

设计器可以使用产品 子字符串筛选出其他产品的图标。 例如,Visual Studio 首选产品 设置为“VisualStudio”的图标。

下面的列表显示了可用于 Visual Studio 和 Expression Blend 图标的工具箱图标命名约定示例。

  • 命名空间.控件名称.VisualStudio.扩展名

  • 命名空间.控件名称.VisualStudio.任意字符串.扩展名

  • 命名空间.控件名称.Expression.png

  • 命名空间.控件名称.Expression.任意字符串.png

如果没有找到与上述名称相匹配的图标,则将搜索以下名称。

  • 命名空间.控件名称.扩展名

  • 命名空间.控件名称.任意字符串.扩展名

下面的列表显示了 TailspinToysControlLibrary 命名空间中 TailspinToysControl 控件的工具箱图标名称示例。 添加了有关图像格式的其他可选信息,但是设计器不使用它们。

  • TailspinToysControlLibrary.TailspinToysControl.VisualStudio.24bit.48x48.bmp

  • TailspinToysControlLibrary.TailspinToysControl.Expression.4bit.16x16.png

在设计器找到工具箱图标后,将加载与设计器的目标图标大小最匹配的图标,以显示该图标。 下面的列表显示了匹配条件的应用顺序。

  1. 选择在图标名称中指定了设计器的图标,而不选择未指定设计器的图标。 例如,WPF 设计器 首选名称中包含“VisualStudio”的图标,而不选择名称中包含“Expression”的图标。

  2. 选择与呈现大小最匹配的图标。 Visual Studio 工具箱加载与 16x16 像素最接近的图标,然后将该图标映射到 24 位颜色深度。

  3. 选择第一个找到的图标。

重写默认的工具箱图标

可以使用 WPF 设计器扩展性框架重写嵌入在控件的运行时程序集中的工具箱图标。 有关更多信息,请参见演练:为工具箱图标提供元数据

请参见

概念

Visual Studio 2008 中的工具箱图标

其他资源

演练:为工具箱图标提供元数据