黑马程序员技术交流社区

标题: C# winform事件执行顺序 [打印本页]

作者: 梦回唐朝    时间: 2013-8-24 09:27
标题: C# winform事件执行顺序
进入控件时:先激发OnEnter后激发OnGotFocus
离开控件时:先激发OnLostFocus后激发OnLeave
单击键盘时:先激发OnKeyDown后激发OnKeyPress最后是OnKeyUp
Paint事件   
    C#中,窗体、容器、控件的绘制有着一定的顺序。首先绘制容器里的控件,然后绘制窗体上的容器,最后再绘制窗体。
Load事件
   窗体的构造方法先于Load事件,Load事件先于Paint事件发生。所以,一定要注意你的一些初始化代码的放置位置。初始化代码最好放在窗体的构造方法中,并且要在InitializeComponent()方法之后。只有窗体或者UserControl这类的最上层的Windows界面才具有Load事件。   
Refresh方法
    每次调用窗体的Refresh()方法时,都将按照控件、容器、窗体的顺序触发它们的Paint事件,执行相应的事件处理程序。也可以只调用某个控件的Refresh方法,而不重绘整个窗体。如果触发某个Container的Paint事件,那么Container内的所有控件的Paint事件也将被触发。
当窗体被其他窗体覆盖,也会引起paint事件





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2