最新的Web開發教程
 

ASP.NET Web窗體 - 母版頁


母版頁為您的網站的其他頁面提供模板。


母版頁

母版頁允許您創建一個一致的外觀和行為的所有網頁(or group of pages)在您的Web應用程序。

母版頁提供了其他網頁,共享的佈局和功能的模板。 該母版頁定義的內容,可以通過內容頁面覆蓋的佔位符。 輸出結果是主頁面和內容頁面的組合。

在內容頁中包含要顯示的內容。

當用戶請求的內容網頁,ASP.NET會合併的網頁製作與內容頁面的內容結合了母版頁的佈局輸出。


母版頁示例

<%@ Master %>

<html>
<body>
<h1>Standard Header From Masterpage</h1>
<asp:ContentPlaceHolder id="CPH1" runat="server">
</asp:ContentPlaceHolder>
</body>
</html>

主網頁上方是專為其他頁面模板,一個正常的HTML頁面。

@ Master的指令定義為一個母版頁。

主網頁包含一個佔位符標記<asp:ContentPlaceHolder>個別內容。

id="CPH1"屬性標識佔位符,從而允許相同的主頁許多佔位符。

這主網頁被保存的名稱"master1.master".

注:母版頁還可以包含代碼,允許動態內容。


內容頁例

<%@ Page MasterPageFile="master1.master" %>

<asp:Content ContentPlaceHolderId="CPH1" runat="server">
  <h2>Individual Content</h2>
  <p>Paragraph 1</p>
  <p>Paragraph 2</p>
</asp:Content>

上面的內容頁是網絡的各個內容頁之一。

@ Page指令把它定義為一個標準的內容頁面。

內容頁面包含內容標籤<asp:Content>具有到主頁面的引用(ContentPlaceHolderId="CPH1")

此網頁的內容保存名為"mypage1.aspx"

當用戶請求該頁面,ASP.NET會合併與母版頁的內容頁面。

點擊顯示mypage1.aspx。

注:文字內容必須在裡面<asp:Content>標籤。 沒有內容是允許以外的標記。


網頁內容管制

<%@ Page MasterPageFile="master1.master" %>

<asp:Content ContentPlaceHolderId="CPH1" runat="server">
  <h2>w3ii</h2>
  <form runat="server">
    <asp:TextBox id="textbox1" runat="server" />
    <asp:Button id="button1" runat="server" text="Button" />
  </form>
</asp:Content>

上面的內容頁演示了如何控制.NET可以插入內容頁,就像一個成一個普通的頁面。

點擊顯示mypage2.aspx。