设为首页收藏本站

嘻皮客娱乐学习网

 找回密码
 中文注册
搜索
打印 上一主题 下一主题
开启左侧

[面试题库] 为什么我的自定义控件不能正确地显示在工具箱中

[复制链接]
跳转到指定楼层
楼主
发表于 2014-11-30 20:45:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
当在 Visual Studio .NET 2003 中为智能设备自定义控件添加设计器支持时,您可能会碰到以下问题
在设计时无法将一个图标与控件相关,以便显示在工具箱中
当添加到工具箱中时,该组件变灰
原因
使用独立于控件项目的设计项目。Visual Studio .NET 自动将项目的默认命名空间作为位图的名称。“默认命名空间”默认为项目名称。这可能会产生问题,因为设计项目的名称与运行时项目的名称略有差别。
没有设置正确的 ToolBoxItemFilterAttribute 值
解决方案
提供以下示例:Runtime VS.NET Project:MyProject类名称:MyProject.MyClass设计 VS.NET 项目名称:MyProject.DesignVS.NET 设计项目中的 BitMap 名称:Foo.bmp设计程序集中的位图名称:MyProject.Design.MyClass.bmp— 这样会产生问题,因为该位图需要以下名称:MyProject.MyClass.bmp
在以上示例中,将设计项目的默认命名空间设置为“MyProject”而非“MyProject.Design”就可以解决这个问题。
检查程序集中位图名称的最简单方法是运行 ILDASM 并打开 Manifest。该清单的尾部列出了嵌入式资源。
如果您创建了一个从 Component 类派生的自定义组件,则您的代码必须包括以下语句,这样您的组件才能出现在工具箱中:
ToolBoxItemFilterAttribute(“NETCF”,ToolBoxItemFilterType.Require)
ToolBoxItemFilterAttribute(“System.CF.Windows.Forms”, ToolBoxITemFilterType.Custom)
回复

使用道具 举报

小黑屋|手机版|嘻皮客网 ( 京ICP备10218169号|京公网安备11010802013797  

GMT+8, 2024-5-15 02:58 , Processed in 0.163713 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表