イベントをフックすることができ、aspxcodebehindファイルのloadおよびinit..、イベントをオーバーライドすることもできます。以下の質問があります。
public partial class Default : System.Web.UI.Page
{
public Default()
{
this.Init += Default_Init;
this.Load+=Default_Load;
}
protected void Default_Load(object sender, EventArgs e)
{ }
protected void Default_Init(object sender, EventArgs e)
{ }
protected override void OnLoad(EventArgs e)
{ }
protected override void OnInit(EventArgs e)
{ }
}
Qs:
- なぜそのようなオプション(仮想メソッドとイベントハンドラーの両方)がPageクラスに存在するのですか?
- オーバーライドメソッドが実行されると、イベントハンドラー(Default_LoadおよびDefault_Init)が実行されません。背後にある理由は何ですか?
- base.OnLoad(e);を呼び出す必要があります。オーバーライドされたOnLoadメソッドで?なぜ私はすべき/すべきではないのですか?