Resize, SizeChanged, Layoutイベントの違い

 

イベント説明
Resizeコントロールのサイズが変更された時に発生。
SizeChangedSizeプロパティが変更されたときに発生。
Layoutコントロールが配置し直す時に発生。

上記の説明では、イマイチ違いが解らないので、実際に発生の順序の違いを調べました。

●ユーザのマウス操作でFormサイズを変更した場合

Layoutイベント
 ↓
Resizeイベント
 ↓
SizeChangedイベント

●プログラミングでSizeプロパティを変更した場合

this.Size = new Size(300, 100);
Layoutイベント
 ↓
Resizeイベント
 ↓
SizeChangedイベント

●プログラミングでHeightプロパティを変更した場合

Form.Height += 100;
Layoutイベント
 ↓
Resizeイベント
 ↓
SizeChangedイベント

結果は、どれも同じ順序で発生することが解りました。

なお、Microsoftのドキュメントでは、「Layoutイベントを使用してカスタムレイアウトを処理すること」をお勧めしています。

0 件のコメント:

コメントを投稿

POKUDA AI高画質化工房サポートページ

当製品に関する問い合わせはこのコメント欄へお願いします