如何重写一个控件的onpaint事件

 我来答
匿名用户
推荐于2018-04-10
展开全部
使用OnPaint事件可以随时绘制图形

调用窗体的OnPaint事件
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
//绘图
}

但是如何重写控件的OnPaint事件呢?比如说绘图是在PictureBox中绘制的,那么如何重写PictureBox的OnPaint事件?

我们无法直接在窗体的代码中重写控件的OnPaint事件,只能重写窗体的OnPaint事件。

重写控件的OnPaint事件,必须创建一个新的控件。这个控件继承Windows的控件,然后在创建的控件中重写控件的OnPaint事件。

以PictureBox为例:

//定义一个新的控件,继承PictureBox控件
public class myPictureBox : PictureBox
{
//自定义控件的构造函数
public myPictureBox()
{
}
//重写控件的OnPaint属性
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
//绘图
}
}

使用这种方法,就可以重写任何一个控件的OnPaint事件了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
?>

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式