
使用母版頁的優點包括:
- 允許您集中頁面的通用功能。
- 允許您創建一個控件和代碼,並將結果應用於一組頁面。
- 允許您控制最終頁面的佈局。
- 允許您從各個內容頁面定制母版頁。
主版頁面
- 母版頁定義為文件擴展名.master。
- 母版頁繼承自MasterPage類。
- 母版頁包含一個@ Master指令。
- 母版頁使用ContentPlaceHolder控件來定義內容頁面的區域。
MasterPage和ContentPage範本
下面是一個主版頁面與內容頁面的範例:
檔案總管配置
Master Page 母頁
MasterPage.master
<%@ Master Language="C#" AutoEventWireup="true" CodeFile="MasterPage.master.cs" Inherits="MasterPage" %>
<!DOCTYPE html>
<html>
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<asp:ContentPlaceHolder id="head" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<div style="background:#b6ff00">
母版頁(Master Pages):Master Page 使您有能力為web 應用程序中的所有頁面(或頁面組)創建一致的外觀和行為。
</div>
<form id="form1" runat="server">
<div>
<asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">
<div style="background:#ffd800">
這是是放內容資料的,MasterPage這邊放任何程式會被清除
</div>
</asp:ContentPlaceHolder>
</div>
</form>
</body>
</html>
Content Page 內容頁
Default.aspx
<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<h2>這是內容頁面,</h2>
<h2>Individual Content</h2>
<p>Paragrap 1</p>
<p>Paragrap 2</p>
<asp:TextBox id="textbox1" runat="server" />
<asp:Button id="button1" runat="server" text="Button" />
</asp:Content>
範本結果
參考資料:
Master Page:http://vito-note.blogspot.com/2012/10/master-page.html
microsoft MasterPage.Master 屬性:https://docs.microsoft.com/zh-tw/dotnet/api/system.web.ui.masterpage.master?view=netframework-4.8
