いくつかの情報源(これを含む)によると、マスターページを使用する場合、ページLoad
はマスターページの前に発生しますLoad
。
Page.Title
ページに値を割り当てると、Load
機能します。
Page.Title += "J"
マスターページに書き込むと、以前に値が割り当てられていたかどうかに関係なくLoad
、タイトルはになります。J
いずれの場合も、Response.Write(Page.Title)
後でマスターページLoad
で空になります。
私はここで何を見逃していますか?
編集(いくつかのコード):
default.aspx
Page.Title = "Title";
マスターページ
Page.Title += " - More title";
.
.
.
Response.Write("TITLE: " + Page.Title);
TITLE:
ウィンドウと- More title
ブラウザのヘッダーが表示されます。
編集(一部のデバッグ):
aspxとマスターページに以下を追加しました。
protected void Page_Init(object sender, EventArgs e)
{
Response.Write("<!--DEBUG-" + (debug_counter++) + "- TITLE: " + Page.Title + "-->\r\n");
}
protected void Page_PreRenderComplete(object sender, EventArgs e)
{
Response.Write("<!--DEBUG-" + (debug_counter++) + "- TITLE: " + Page.Title + "-->\r\n");
}
protected void Page_Render(object sender, EventArgs e)
{
Response.Write("<!--DEBUG-" + (debug_counter++) + "- TITLE: " + Page.Title + "-->\r\n");
}
protected void Page_SaveStateComplete(object sender, EventArgs e)
{
Response.Write("<!--DEBUG-" + (debug_counter++) + "- TITLE: " + Page.Title + "-->\r\n");
}
Load
加えて、両方の機能全体でいくつかの同様の行。それらはすべて空白で出てきます。