标签:包括 编写 button win 内容 第三方 use 文档 com
前面介绍了微软的控件,也介绍了几个第三方控件,那么这些控件是如何做出来的?即便我们自己不做控件,也至少要理解控件的原理。
如果要创建一个自定义控件,首先新建一个C#下面的Windows窗体控件库
?
最简单的方法只要拖一个label,放一个定时器,定时器每隔一秒获取并显示当前系统时间即可(F5可以运行测试看到效果)
?
那么还是跟之前一样,把这个生成的DLL拖放到工具箱就可以给新的项目使用了
?
稍微复杂一点的情况,我们也改写一下官方的RichTextBox,让他可以插入图像,导入RTF文件。首先还是新建一个自定义控件UserControl2,注意他默认继承自UserControl,我们改成继承自RichTextBox
?
为这个控件添加两个额外功能(可以看到都是0个引用,都是0个引用就是说在当前的程序里都还没有用到这个方法),具体导入RTF,插入图片为什么这样写就可以,其实你一直在用RichTextBox的时候就已经实现了这些功能,只不过现在你把原有的RichTextBox再复合一些常用功能,让控件更好用而已(我们目前还不是真正的从头开始写一个控件,而只是稍微改进一下原有控件,所以我们都还是用了原有空间的LoadFile,Controls.Add这些方法)
?
注意这个自定义控件已经不需要UserControl的什么属性和方法了,所以在InitializeComponet的时候原有的定义属性和方法的都删除干净(如果你切换到设计视图,只能看到下面这句话,这个是正常的,因为继承自UserControl是有画面的,自定义类没有,或者除非你再自己加上去)
?
完了之后点击生成,重新生成解决方案,得到新的DLL(如果F5运行报错也不用管它)
?
控件具备了这两个方法之后,就可以生成,拖放到新的项目,然后随时按钮点击之后可以执行控件自身的导入方法,非常高效
?
可以导入图像,包括GIF
?
也可以导入整个文档(RTF格式)
?
总结:本节课程内容较多,但是实际上不需要都立即掌握,真正用到的时候再想怎么用,目前只要了解即可,即便是了解的程序,读者需要自己做测试:
1 微软自带的各种控件的功能测试,了解常用的属性方法,尤其是基本的label,button,textbox这些控件,以后会一直用到
2 第三方控件的简单使用,了解第三方控件相比于微软自带控件的额外属性和方法(如果需要能够快速使用第三方控件美化界面)
3 第三方控件的简单编写,了解第三方控件的设计原理
?
更多教学视频和资料下载,欢迎关注以下信息:
我的优酷空间:
http://i.youku.com/acetaohai123
?
我的在线论坛:
http://csrobot.gz01.bdysite.com/
?
问题交流:
QQ:910358960
?
?
标签:包括 编写 button win 内容 第三方 use 文档 com
原文地址:http://www.cnblogs.com/acetaohai123/p/7586665.html