虽然VS为我们提供了很多控件可以使用,但有时候这些控件仍然不能满足我们的要求,比如我们要对部分控件进行一些个性化的定制,例如美化控件,这时候就需要自己绘制控件,或是在原有控件的基础上进行修改
自定义控件分为三种
1、组合控件(CompositeControls):在原有控件的基础上根据需要进行组合
2、扩展控件(ExtendedControls):继承自原有控件,添加一些新的属性和方法,绘制一些新元素
3、自定义控件(CustomControls):控件的绘制全部由用户定义
1、组合控件
新建项目,拖入需要的控件,就像在窗体一样
编译生成,可以查看控件的外观
在生成的目录可以找到相应的控件库文件CompositeControl.dll
这样组合控件的dll就做好了,用法后面再讲
2、扩展控件
首先,添加一个类库
引用两个命名空间 System.Drawing 和 System.Windows.Forms ,类改名为为ButtonEx,继承自Button
注意,扩展控件编译生成后并不能调用可视化工具查看,只生成了dll文件,需要引入到项目中使用才能看到
3、自定义控件
自定义控件添加方法跟扩展控件一样,只是最后类是继承自Control类的
接下来是把控件库引入到项目中使用
如果项目和控件库项目在同一解决方案中的话,控件会自动引入到工具箱
如果在不同项目中
浏览 选择库文件,然后将该控件打钩
将控件拖到窗体中
摘自http://www.cnblogs.com/bomo/archive/2012/12/09/2810559.html