CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

如何为自定义的控件在工具箱中自定义个性化的图标?

楼主jpljpl()2005-02-22 20:50:07 在 .NET技术 / C# 提问

自己编写各自使用的控件,但是所有的控件默认在工具箱中的图片都是单一的图标—齿轮。如何为自定义的控件在工具箱中自定义个性化的图标呢?  
  有玩过的朋友吗?  
  问题点数:60、回复次数:6Top

1 楼tangyy(tang)回复于 2005-02-22 20:59:00 得分 1

问得不错!!Top

2 楼hedonister(冰戈)回复于 2005-02-22 21:03:45 得分 59

有啊,前段时间试了两个方法  
   
  方案1:   用一个bitmap图片(不能是一个icon图片,嵌入资源)文件  
   
  不需要使用特别的ToolboxBitmapAttribute类来实现.  
  例如你有一个命名空间CarryNoProgramBar,自定义控件为Bar的项目。  
   
  1按照上面图片规则来建立一个命名为Bar.bmp的图片,添加该图片到你的项目,  
   
  2把该Bar.bmp的图片设置属性   生成操作设置为à嵌入的资源  
   
  3注意该图片的命名空间必须也是CarryNoProgramBar  
   
  4如果该控件的命名空间和项目的默认命名空间不匹配,你必须把该bitmap图片移到适当的子目录让他们匹配。如果你使用该方法无效,很显然你不能使用该技术来实现你自定义图片,你可以下面ToolboxBitmap属性技术来实现  
   
  5.注明我使用直接在根目录中的方式取的工具箱中的图标。  
   
  上面简单的技术来实现你的需求,而不需要你去使用ToolboxBitmapAttribute去产生你的类型  
   
  Top

3 楼hedonister(冰戈)回复于 2005-02-22 21:04:10 得分 0

方案2:  
   
  使用ToolboxBitmap属性  
   
  使用一个和类型同名bitmap图片而非icon嵌入资源,默认的命名空间是CarryNoProgramBar  
   
  namespace   CarryNoProgramBar{  
   
  [ToolboxBitmap(typeof(Bar))]  
   
  public   class   Bar   :   UserControl   {...}  
   
  }  
   
  上面例运行当中,假定了你的项目根目录下存在一个命名为Bar.bmp嵌入资源图片,注意是你的图片和控件的命名空间的一致性  
   
  例2   如果你需要项目中存在子目录放你的图片,你可以修改为  
   
  namespace   CarryNoProgramBar{  
   
  [ToolboxBitmap(typeof(Bar),"sub.Bar.bmp")]    
   
          public   class   Bar   :   UserControl  
   
          {......}  
   
  }  
   
  或者  
   
  [ToolboxBitmap(typeof(Bar),"sub.Bar.ico")]  
   
  通过子目录使用,你可以使用特殊的资源,当然也包括ico文件,必须注意我上面使用了一个sub的子目录  
   
  例3    
   
  有时候你的控件和图片不在同一个命名空间里,在下面的情况你必须在统一个命名空间里使用同一个类型的嵌入资源的图片  
   
    默认命名空间  
   
  namespace   MyAssemblyNamespace{  
   
    public   class   SomeType  
   
    {...}  
   
  }  
   
  namespace   DifferentNamespace  
   
  {  
   
  [ToolboxBitmap(typeof(SomeType),   "Bar.ico")]  
   
  public   class   Bar   :   UserControl    
   
  {...}  
   
  }  
   
  Top

4 楼hedonister(冰戈)回复于 2005-02-22 21:04:51 得分 0

晕,忘说明了  
  上面例子中,bitmap   或icon图片必须遵循下面的规则  
   
  1、Bitmap   或icon尺寸不许是16色   16   X   16  
   
  2、底色必须是透明的  
   
  Top

5 楼supergoalcn(Supergoal)回复于 2005-03-26 22:51:34 得分 0

好有用的东西啊,总算试出来了,谢谢!Top

6 楼frankyshu()回复于 2005-08-04 08:21:00 得分 0

markTop

相关问题

  • 如何为自定义的控件在工具箱中自定义个性化的图标?
  • 工具箱中的自定义控件如何加上自己定制的图标?
  • 如何自定义控件的图标?
  • 新的自定义控件加到左边的工具箱的问题
  • WEB自定义控件如何显示控件的图标?
  • 蛙蛙请教:自定义控件只有放到工具箱里才可以拖放操作吗?
  • 如何给自定义的控件加上图标?
  • 如何给自定义控件设置图标?
  • 怎么给C#的自定义组件/控件加图标?
  • 如果改变自定义控件的图标

关键词

  • 控件
  • 命名
  • 属性
  • 项目
  • 技术
  • 自定义
  • toolboxbitmap
  • 工具箱
  • 图片
  • carrynoprogrambar

得分解答快速导航

  • 帖主:jpljpl
  • tangyy
  • hedonister

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo