winform绘图之OnPaint事件
1、首先小编这里创建一个winform程序,然后在窗口中有一个按钮,点击按钮在左侧画出一个绿色的长方形,为了防止正方形因为窗口失去焦点或者放大缩小等事件消失,这里实现窗口的Paint事件,如下图:

3、运行程序可以看到鼠标点击事件以及窗体的Paint事件正常运行,如下图:

4、接下来小编在程序中重写OnPaint事件,并且在OnPaint事件中不实现任何功能,如下图:

6、接下来,在重写的OnPaint事件中加入代码base.OnPaint(),如下图:

8、综上所述,程序在执行的时候,窗体发生改变,如被其他窗体覆盖或者放大缩小时,程序会调OnPaint事件,如果OnPaint事件中有代码base.OnPaint(),程序会继续调用程序中的Paint事件,否则只是执行OnPaint方法,所以OnPaint具有优先性质。