MasterPage 的几个知识点:
1. 在母版页中的 ContentPlaceHolder ,相应的内容页显示为:Content
2. 母版页与内容页的数据通信:每一个控件都得找,
例如:((Label)Master.FindControl("label1")).Text ="MasterPage级别的:"+ DropDownList1.SelectedValue;
前面的label1是 母版页中的, 后面的 DropDownList1 是在内容页中,这句代码是写在 内容页的 cs 文件中.
3. 如果要改变 母版, 则应该在 内容页与母版页合并之前,改变母版页文件.方法如下
MasterPageFile="~/TestMasterPage.master"
过程是这样的:内容页根据页头的 MasterPageFile="~/TestMasterPage.master" 找到母版页后,再合并后在前台显示出来
private void Page_PreInit(object sender,Ev
MasterPage 的几个知识点:
1. 在母版页中的 ContentPlaceHolder ,相应的内容页显示为:Content
2. 母版页与内容页的数据通信:每一个控件都得找,
例如:((Label)Master.FindControl("label1")).Text ="MasterPage级别的:"+ DropDownList1.SelectedValue;
前面的label1是 母版页中的, 后面的 DropDownList1 是在内容页中,这句代码是写在 内容页的 cs 文件中.
3. 如果要改变 母版, 则应该在 内容页与母版页合并之前,改变母版页文件.方法如下
MasterPageFile="~/TestMasterPage.master"
过程是这样的:内容页根据页头的 MasterPageFile="~/TestMasterPage.master" 找到母版页后,再合并后在前台显示出来
private void Page_PreInit(object sender,EventArgs e)
{
if (Session["jiao"] == "")
{ //切换 母版页
Page.MasterPageFile = "/TestMasterPage.master";
}
}
4. 母版页还可以镶嵌使用.这里没做.
母版前台页面: testMasterPage.master
1

<%
@ Master Language="C#" AutoEventWireup="true" CodeFile="TestMasterPage.master.cs" Inherits="TestMasterPage" %>2

3
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">4

5
<html xmlns="http://www.w3.org/1999/xhtml" >6
<head runat="server">7
<title>无标题页</title>8
</head>9
<body>10
<form id="form1" runat="server">11
<div>12
MasterPage 的几个知识点:<br />13
1. 在母版页中的 ContentPlaceHolder ,相应的内容页显示为:Content<br />14
2. 母版页与内容页的数据通信:每一个控件都得找,<br />15
例如:((Label)Master.FindControl("label1")).Text ="MasterPage级别的:"+ DropDownList1.SelectedValue;<br />16
前面的label1是 母版页中的, 后面的 DropDownList1 是在内容页中,这句代码是写在 内容页的 cs 文件中.<br />17
3. 如果要改变 母版, 则应该在 内容页与母版页合并之前,改变母版页文件.方法如下<br />18
MasterPageFile="~/TestMasterPage.master"19
<br />20
过程是这样的:内容页根据页头的 MasterPageFile="~/TestMasterPage.master" 找到母版页后,再合并后在前台显示出来<br />21
private void Page_PreInit(object sender,EventArgs e)22
<br />23
{<br />24
if (Session["jiao"] == "")25
<br />26
{ //切换 母版页 <br />27
Page.MasterPageFile28
= "/TestMasterPage.master"; <br />29
}30
<br />31
}32
<br />33
4. 母版页还可以镶嵌使用.这里没做.<br />34
<br />35
<table border="1" style="width: 100%">36
<tr>37
<td colspan="2" style="height: 45px; background-color: #ccccff">38
这里是导航 ---后面是一个MasterPage的 label:39
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label></td>40
</tr>41
<tr>42
<td style="width: 100px; height: 60px; background-color: #cccc66">43
用户登录</td>44
<td rowspan="2" style="width: 100px" valign="top">45
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">46
</asp:ContentPlaceHolder>47
</td>48
</tr>49
<tr>50
<td style="width: 100px; height: 57px" valign="top">51
<asp:ContentPlaceHolder ID="ContentPlaceHolder2" runat="server">52
</asp:ContentPlaceHolder>53
</td>54
</tr>55
</table>56
</div>57
</form>58
</body>59
</html>60

内容页前台:
1

<%
@ Page Language="C#" MasterPageFile="~/TestMasterPage.master" AutoEventWireup="true" CodeFile="Default3.aspx.cs" Inherits="Default3" Title="Untitled Page" %>2
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">3
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">4
<asp:ListItem Value="aaaaaa">aaaaaa</asp:ListItem>5
<asp:ListItem>bbbbbb</asp:ListItem>6
<asp:ListItem>ccccccc</asp:ListItem>7
<asp:ListItem>dddddddd</asp:ListItem>8
<asp:ListItem>EEEEE</asp:ListItem>9
</asp:DropDownList><br />10
<br />11
<br />12
这个是内容页的label:<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>13
</asp:Content>14
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder2" Runat="Server">15
</asp:Content>16

17

内容页后台:
1
using System;2
using System.Data;3
using System.Configuration;4
using System.Collections;5
using System.Web;6
using System.Web.Security;7
using System.Web.UI;8
using System.Web.UI.WebControls;9
using System.Web.UI.WebControls.WebParts;10
using System.Web.UI.HtmlControls;11

12
public partial class Default3 : System.Web.UI.Page13


{14
protected void Page_Load(object sender, EventArgs e)15

{16

17
}18

19

#region20

/**//// <summary>21
/// 在 内容页 与 母版页合并之前运行的事件22
/// 内容页根据页头的 MasterPageFile="~/TestMasterPage.master" 找到母版页后,再合并后在前台显示出来.23
/// </summary>24
private void Page_PreInit(object sender,EventArgs e)25

{26
if (Session["jiao"] == "")27

{ //切换 母版页28
Page.MasterPageFile = "/TestMasterPage.master";29
}30
}31
#endregion32

33
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)34

{35
((Label)Master.FindControl("label1")).Text ="MasterPage级别的:"+ DropDownList1.SelectedValue;36
Label1.Text = "本页的label为" + DropDownList1.SelectedValue;37
}38
}39

浙公网安备 33010602011771号