↓を見ればわかります…最初に知りたかったよ~(´・ω・`)…
Windowsフォームのイベントの順序
https://msdn.microsoft.com/ja-jp/library/86faxx0d(v=vs.110).aspx
Windowsフォームにおけるマウスイベント
https://msdn.microsoft.com/ja-jp/library/ms171542(v=vs.110).aspx
Windowsフォームアプリケーションが起動したとき
メインフォームのスタートアップイベントが次の順序で発生します。
Control.HandleCreated
Control.BindingContextChanged
Form.Load
Control.VisibleChanged
Form.Activated
Form.Shown
Windowsフォームアプリケーションを閉じたとき
メインフォームのシャットダウンイベントが次の順序で発生します。
Form.Closing
Form.FormClosing
Form.Closed
Form.FormClosed
Form.Deactivate
フォーカスイベントと検証イベント
一般に、
フォーカスを得たとき → Enterイベント(GotFocusイベントは使わない)
フォーカスが外れたとき → Leaveイベント(LostFocusイベントは使わない)
昔はGotFocus・LostFocusを使っていたそうですが、今はEnter・Leaveを使います。
◼︎パターン1
以下の方法でフォーカスを変更したとき
・キーボード (Tab、Shift + Tab など) を使用する
・Select メソッドを呼び出す
・SelectNextControl メソッドを呼び出す
・ActiveControl プロパティを現在のフォームに設定する
次の順序で Control クラスのフォーカス イベントが発生します。
Enter
GotFocus
Leave
Validating
Validated
LostFocus
◼︎パターン2
以下の方法でフォーカスを変更したとき
・マウスの使用
・Focus メソッドの呼び出し
次の順序で Control クラスのフォーカス イベントが発生します。
Enter
GotFocus
LostFocus
Leave
Validating
Validated
マウスイベント
次の順序で発生します。
MouseEnter
MouseMove
MouseHover / MouseDown / MouseWheel
MouseUp
MouseLeave
マウスボタンのシングルクリックイベント
Windowsフォームのコントロールで、
Button、CheckBox、ComboBox、RadioButton以外は、
次の順序でクリックイベントが発生します。左右ボタンのどちらにも以下の順序で発生します。
MouseDown
Click
MouseClick
MouseUp
マウスボタンのダブルクリックイベント
Windowsフォームのコントロールでは、次の順序でイベントが発生します。
(Button、CheckBox、ComboBox、RadioButton以外)
MouseDown
Click
MouseClick
MouseUp
MouseDown
DoubleClick
MouseDoubleClick
MouseUp
DoubleClickイベントについて
コントロールのStandardDoubleClickスタイルビットがtrueに設定されているかどうかによって異なる場合があります。
グレープシティのイベント
FlexGrid for WinFormsにはBeforeMouseDownイベント(MouseDownイベントを処理する前に発生)などいろいろな便利イベントが準備されています。