首页 > 编程语言 >C#中设置自定义控件工具箱图标

C#中设置自定义控件工具箱图标

时间:2024-09-12 20:14:03浏览次数:10  
标签:控件 UserDefindControl 自定义 C# 添加 工具箱 图标

在设计自定义控件时,系统默认生成的图标比较单一且难看,如何为控件设计自己的图标呢,这里给出了一种基于ToolBoxBitmap 属性设置自定义控件工具箱图标的方法。

1、首先将图标文件名改为自定义控件名,如自定义控件类为:

 public partial class UserDefindControl: UserControl
 {
 }

那么就要将图标图片文件更名为UserDefindControl,如UserDefindControl.bmp

2、然后将图标图片复制到控件所在的项目工程根目录(与***.csproj同目录)下,并设置为嵌入的资源。

具体操作:在解决方案管理器中在项目名称右键选择“添加”—>“添加现有项”,将图标图片加入到项目中,对图片资源的属性进行修改,将“生成操作”一栏该为“嵌入的资源”。

3)添加代码。在类头部添加如下代码。

[ToolboxBitmap(typeof(UserDefindControl),"UserDefindControl.bmp")]//新添加的代码

public partial class UserDefindControl: UserControl
{
 }

需要注意的是,使用ToolboxBitmap时需要添加using System.Drawing引用。

4、如果图标图片不是放在项目工程根目录下,而是在子目录subfolder下,则需要增加"subfolder."前缀。

比如图片放在项目工程根目录的下一级目录文件夹Icons下时,代码就要修改为:

[ToolboxBitmap(typeof(UserDefindControl),"Icons.UserDefindControl.bmp")]

至此,控件的自定义工具箱图标设置就完成了,编译程序,然后把控件添加到工具箱中试试吧!

标签:控件,UserDefindControl,自定义,C#,添加,工具箱,图标
From: https://www.cnblogs.com/soliang/p/18410984

相关文章

  • dotnet OpenXML SDK 添加 CoreFilePropertiesPart 的方法
    本文记录在OpenXMLSDK2.15版本下,为PPTX文件添加CoreFilePropertiesPart的方法,通过本文的方法可以正确且简单的添加core.xml文件到PPTX文件里当前的OpenXMLSDK存在已知问题,那就是默认情况下生成不包含core.xml文件,请参阅https://github.com/dotnet/Open-XML-SDK......
  • dotnet 测试在 UOS Linux 上使用 Process Start 打开文件的行为
    本文记录我在UOSLinux系统上使用Process.Start打开文件的行为使用UseShellExecute打开文本文件我放入了名为Test.txt的文件,然后使用下面代码尝试打开文件。实际测试可以正常打开usingSystem.Diagnostics;varfilePath="../Test.txt";Console.WriteLine($"文件......
  • UNO 已知问题 在后台线程触发 SKXamlCanvas 的 Invalidate 且在 PaintSurface 事件抛
    本文记录一个UNO已知问题,在UNO里面可以利用SKXamlCanvas对接Skia绘制到应用里面。如果此时在后台线程里面调用SKXamlCanvas的Invalidate触发界面的重新刷新,但在具体的执行绘制PaintSurface事件里面对外抛出异常,将会导致应用炸掉背景:我准备在UNO里面将Microsoft......
  • WPF 的 WriteableBitmap 在 Intel 11 代 Iris Xe Graphics 核显设备上停止渲染
    在Intel11代锐炬Intel®Iris®XeGraphics核显设备上,如果此设备使用旧版本驱动,则可能导致WPF的WriteableBitmap停止渲染。此问题和WPF无关,此问题是Intel的bug且最新驱动版本已修复官方问题记录地址:https://www.intel.cn/content/www/cn/zh/support/articles/000......
  • DMS2030 Compute the labor
    DMS2030IndividualAssignment 1Due Date: 11:59 pm,October 14th,20241.AfertilizercompanyfromSan Diego has providedthefollowingdata. LastYear ($)ThisYear($)Sales23,00034,000Labor10,00016,000Raw Mat......
  • 2.13 已知f(x)=(|x+1|-|x-1|)/2+sinx,g(x)=(|x+3|-|x-3|)/2+cosx,求下列超定方程组的
    点击查看代码importnumpyasnpdeff(x):return(abs(x+1)-abs(x-1))/2+np.sin(x)defg(x):return(abs(x+3)-abs(x-3))/2+np.cos(x)#假设我们有一些初始猜测值(这里只是随机选择的)x1_guess=0.5x2_guess=1.0......
  • 【C语言】浮点数在内存中的存储
    引言之前我们已经学习过 整数在内存中的存储,现在我们来学习浮点数在内存中的存储【整数存储】 ......
  • Ubantu和Centos7一键shell更换镜像源与Linux系统Python3环境安装
    目录前言1.一键更换源1.1创建文件1.2向环境赋予可执行的权限 2.Linux系统配置Python3环境2.1查看当前python环境2.2更换源 2.3安装所需的依赖2.4.下载python环境文件2.5.解压文件2.6进行编译2.7 开始安装2.8 设置软连接2.9测试是否安装成功前言......
  • [基于 Vue CLI 5 + Vue 3 + Ant Design Vue 4 搭建项目] 05 创建一个 web 项目
    1.通过vuecreate项目名命令创建项目这里创建一个项目名叫做web的项目vuecreateweb选择Manuallyselectfeatures然后摁回车选择了Router和Vuex然后摁回车选择3.x然后摁回车是否使用历史模式,这里y然后摁回车历史模式和非历史模式(Hash模式)主要......
  • 宝藏级Docker应用推荐(建议NAS/AllinOne用户收藏)
    梳理收集了个人比较常用的Docker应用,这些应用大多免费开源,能极大提高的提高日常工作效率,也能充分榨干家里闲置设备资源,比如NAS、个人PC、主机服务器等。一、家庭娱乐中心类家庭影音、漫画、小说等1、影视类Jellyfin、Emby(个人可以不开通专业版,免费版够用)推荐原因:看电影......