主要针对在VS2012、VS2013的工具箱中,通过“选择项”添加自定义的Dll,如.NET类型时,出现“没有可放置在工具箱的组件”问题的常见解决方案。例如在线编辑工具:FreeTextBox
解决方法:
【1】封装的Dll有问题
1.编写控件库的扩展类时,没有加public关键字,如:
1 view plaincopyprint? 2 public class MyListView: System.Windows.Forms.ListView 3 { 4 public MyListView() 5 { 6 7 } 8 }
如果去掉 public 也可以生成DLL,但当你把它添加到用户控件时就会提示该错误。
2.编写控件库的扩展类时,没有空的构造函数,即使如果存在带参数的构造函数也应存在空的构造函数,如:
1 view plaincopyprint? 2 public class FirstControl : Control 3 { 4 public FirstControl() 5 { 6 } 7 public FirstControl(string strTitle) 8 { 9 } 10 }
【2】高版本的VS2012、2013等有问题
vs2012和2010添加控件一样的,选择项->浏览->选择组件类型->浏览->选择DLL。。。但在vs2010可以识别dll里的控件,但vs2012却出现“没有可放置在工具箱上的组件”的问题,这是有个简单的解决方法:
通过鼠标选择要添加的Dll,按住鼠标左键不放,将Dll直接拖到工具箱上,强悍吧!!<>