为我的自定义用户控件创建自定义工具箱图标
本文关键字:自定义 工具箱 图标 创建 用户 我的 控件 | 更新日期: 2023-09-27 18:34:22
我已经为此工作了一段时间,但似乎无法弄清楚!
我有一个类似于以下布局的解决方案...
Solution 'Gen' (2 projects)
'-> MyControls
'-> graphics
'-> UserControl1.bmp
'-> UserControl1.cs
'-> Gen
'-> MainGUI.cs
我想简单地制作一个工具箱图标,以便我可以在工具栏上看到一个漂亮的图标,而不是蓝色的齿轮(默认工具箱图标(。
<小时 />我目前采取的步骤...
1. 创建位图图像:
我制作了一个 16x16 像素的图像,它是 16 种颜色(4 位(。
2. 将图像嵌入为资源:
单击"解决方案资源管理器"窗口中的图像,然后在属性窗口中将"生成操作"更改为"嵌入的资源"。
3. 添加一个内部类,用于修复 GetImageFromResource(( 方法中的错误:
在命名空间声明之前,我添加了以下行...
internal class resfinder
{
}
4. 添加类属性"工具箱位图":
在类声明上方...
public partial class UserControl1 : UserControl
我添加了以下行...
[ToolboxBitmap(typeof(resfinder), "Gen.graphics.UserControl1.bmp")]
5. 构建项目:
在"构建"菜单下,我使用了"重建解决方案"。
整个代码块:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
internal class resfinder
{
}
namespace Gen
{
[ToolboxBitmap(typeof(resfinder), "Gen.graphics.UserControl1.bmp")]
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
}
}
}
<小时 />结果:
当我尝试在 MainGUI.cs 表单上使用它时,我仍然将蓝色的小齿轮作为工具箱图标。
<小时 />来源:
- 如何查找难以捉摸的工具箱位图图标
- 如何:为控件提供工具箱位图
- 显示自定义控件的自定义图标?
答案似乎很简单... 我其实一切都做对了!
不过有一件小事值得注意...
如果您使用的是引用,则不会显示自定义工具箱图标 到同一解决方案中的项目。
要修复/解决此问题,您需要执行以下操作...
添加对已编译(自定义控件的产品(的引用 项目(DLL 文件。
我最终在编译自定义控件项目后将其删除,然后添加对我想使用它的项目的引用。 完成后,我右键单击工具箱,然后单击"选择项目..."。 然后单击浏览并从那里加载 DLL。
现在,自定义工具箱图标显示得很好!