在C#中使用OnPaint覆盖方法比Paint方法有什么优势?

时间:2019-02-20 18:45:14

标签: c# winforms gdi+

我正在学习C#的各种功能,并且试图创建一个Windows Forms程序,在其中绘制一个矩形。

我知道onpaint方法应该覆盖paint方法,如果希望为父类提供方法,则覆盖方法会有所帮助。

在什么情况下应使用OnPaint处理程序

protected override void OnPaint(PaintEventArgs e)

代替常规的油漆处理程序

private void Form1_Paint(object sender, PaintEventArgs e)

另一种询问方式是onpaint方法提供了form1_paint无法提供的哪些方法?

1 个答案:

答案 0 :(得分:-2)

根据Broots指出的C# Winforms - Paint method questions,这两种方法在工作时都没有太多优势。根据Thomas的说法,重写OnPaint可能会更快一些,因为OnPaint不会触发Paint事件。