merlinzjl

导航

winform控件重绘

C#定义控件的可以分为三种:

1 复合控件:将标准控件组合起来

class MyControl:UserControl{}

比如可以重载OnLayout()函数 ->重写控件的布局

使用 Browsable注解和DesignerSerializationVisibility注解可以在控件属性面板中显示属性

对于已经存在的父类属性,重写时可以加上override。

 

2 扩展控件:继承于标准控件

class MyControl:Button{}

 

3 自定义控件: 完全地自定义一个控件

class MyControl:Control{}

 

继承于Control类,就可以从头到尾定制一个控件

通常我们重写OnPaint()方法,实现控件的绘制。

一般需要先调用base.OnPaint()方法,使用Graphics来绘制。

在OnPaint中绘制时,要提供相关坐标,该坐标是以控件自身的左上角为(0,0)坐标。

OnPaint一般绘制前景,而背景绘制我们可以放到OnPaintBackground中。

图片的绘制时,使用DrawImage方法绘制。

 

posted on 2020-08-28 23:41  merlinzjl  阅读(1765)  评论(0编辑  收藏  举报