2009-06-03 11 views
5

アプリケーション/コントロールがロードされたときに最後に発生するusercontrolイベントはどれですか?ロードイベント?Winform - 最後に発生するusercontrolイベント

+0

最後に発生したイベントはいつですか?シャットダウン時の最初の外観では?ご指定ください。 –

答えて

0

Winformsコントロールは、asp.net webformsコントロールと同じ意味でライフサイクルを持ちません。 UIイベントは、ユーザーが何かを実行するときに発生します。

8

それは本当にあなたが人生の中でいつ話しているかによって決まります。あなたの推測でLoadを与えられたら、作成/ロード中に話します。レイアウトという

HandleCreated 
Load 
Layout 
VisibleChanged 
Paint 

注:このリストには、彼らは私が(イベントリスナーの数をフックアップし、コンソールにイベント名を印刷)テスト用にセットアップ、簡単なユーザーコントロールに発射されたことを順番にいくつかのイベントを示してい、VisibleChangedとPaintは厳密にコントロールの作成とは関係ありません。レイアウト、特にペイントは、コントロールの寿命中にいくつかの機会に提起されるかもしれません。 VisibleChangedについても同様で、Visibleプロパティの値が変更されるたびに呼び出されます。

+1

+1 - あなたは私にそれを打つ。私は同じ結果を得ました - ペイントは最後です。また、CreateControlはHandleCreatedとLoadの間で発生し、PaintBackgroundはPaintの前に発生します。 –

+0

@Jon B:PaintBackgroundイベントはありませんが、保護されたOnPaintBackgroundメソッド(標準のイベント発生メソッドと非常によく似ていますが、イベントは発生しません)があります。どちらの方法でも、CreateControlとOnPaintBackgroundはユーザーコントロール内でのみ使用でき、外部コード(コントロールをホストするフォームなど)では使用できません。 –

+0

@ジョンB:言及するのを忘れました。それらの2つの方法の良い点はまだ! :) –

関連する問題