AutoEventWireUp
ページ プロパティの役割がわかりません。
この記事を読みましたが、それでもわかりません。
ページがリクエストされると、ライフサイクルの一部と見なされるさまざまなイベントが発生します。Peter Bromberg が作成した視覚的表現を手元に置いています。
このAutoEventWireUp
プロパティが True の場合、ページ ライフ サイクルのこれらの組み込みイベントの一部がそれらのハンドラーに自動的に関連付けられます。つまり、これらのイベントを明示的にアタッチする必要はありません (たとえば、VB で Handles キーワードを使用)。
これらの組み込みイベントの例は、Page_Init
およびPage_Load
です。
AutoEventWireUp
True に設定し、 EventHandlerを明示的に接続すると、それらが 2 回実行されていることがわかります。これが、Visual Studio がこの属性を既定で に設定しておく理由の 1 つfalse
です。
編集:(Chester89のコメントの後)
PageのAutoEventWireUp
属性のデフォルト値は であるのに対し、Page クラスtrue
のプロパティのデフォルト値はAutoEventWireUp
false
この記事で説明したように、AutoEventWireUp をオンにすると、asp.net は page_load 構文を使用したメソッドがあることを自動的に認識し、自動的に呼び出します。
private void Page_Load(object sender, System.EventArgs e)
{
}
これにより、(非常に)わずかなオーバーヘッドを犠牲にして、よりクリーンなコードビハインドが得られます。指定しない場合は、ページ読み込みイベントを処理することを asp.net に明示的に伝える必要があることに注意してください。
this.Load += new System.EventHandler(this.Page_Load);
これは、 Page_Eventという命名規則を使用するため、ページ内の他のイベントにも適用されることに注意してください。