別のUserControlを継承しているUserControlがあり、質問は簡単です。コントロールのページロードが最初に起動しますか、それとも基本クラスのページロードが最初に起動しますか?
3 に答える
構成を制御するのではなく、実際の継承について話している場合は、すべての標準的なオブジェクト指向ルールが適用されます。
これらは個別のオブジェクトではないため、コントロールにはLoadイベントが1つだけあり、新しい修飾子を使用して明示的に非表示にしない限り、Page_Loadメソッドは1つしかありません。したがって、本質的に、子ページの読み込みと親ページの読み込みに違いはありません...これらは同じものです。
「ページはページでOnLoadイベントメソッドを呼び出し、次に各子コントロールに対して同じことを再帰的に実行します。これは、ページとすべてのコントロールが読み込まれるまで、各子コントロールに対して同じことを行います。」
このリンクから:http://msdn.microsoft.com/en-us/library/ms178472.aspx
したがって、わかりやすく答えると、Page_Loadイベントは、ユーザーコントロールのloadイベントの前に呼び出されます。
コントロールのPage_Loadが最初に起動するはずだと私は信じています。Page_Initイベントを除いて、他のすべての開始イベントはコントロール階層の上位で発生します。
編集:私はそこまで間違っています。ページはloadイベントを発生させてから、子コントロールで再帰的に呼び出し、子コントロールで再帰的に呼び出します。私の悪い...