C#Windows控件的焦点事件顺序

C#Windows控件的焦点事件顺序
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

你可能感兴趣的:(C#Windows控件的焦点事件顺序)