twzheng's cppblog

『站在风口浪尖紧握住鼠标旋转!』 http://www.cnblogs.com/twzheng

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  136 随笔 :: 78 文章 :: 353 评论 :: 0 Trackbacks
C#Windows控件的焦点事件顺序

网摘,收集整理,MSDN也有讲到此内容。


TextBox 控件的事件发生顺序
为Enter、GotFocus、Leave、Validating、 Validated、LoseFocus,也就是说程序焦点先“进入”控件,然后控件“得到焦点”,然后焦点“离开”控件,这个时候焦点在控件内干的事情还没有存入,于是“校验”,然后存入,存入完了发生“校验完”事件,善后处理完毕后控件就“失去焦点”。

测试TextBox事件的结果,如有不对,还望更正。
  一、用鼠标点击控件,然后离开。
  Enter
  GotFocus
  LostFocus
  Leave
  Validating
  Validated
  二、用鼠标,当 Validating 中 CancelEventArgs.Cancel = true 时:
  Enter
  GotFocus
  LostFocus
  Leave
  Validating
  Enter
  GotFocus
  三、用tab键经过一个控件时。
  Enter
  GotFocus
  KeyUp
  Leave
  Validating
  Validated
  LostFocus
  四、用tab键当 Validating 中 CancelEventArgs.Cancel = true 时
  Enter
  GotFocus
  KeyUp
  Leave
  Validating
  Enter
  KeyUp
posted on 2007-12-03 01:22 谭文政 阅读(1118) 评论(0)  编辑 收藏 引用 所属分类: 基础知识

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理