母板页
- 创建母板页 -1
创建母板页后可以在head和body标签内看到俩个占位符:
<asp:ContentPlaceHolder id="head" runat="server"> </asp:ContentPlaceHolder>
和
<asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server"> </asp:ContentPlaceHolder>
.
- 创建内容页 -1
在创建内容页时,选择使用母板。创建成功后,在内容页中有一个头部标记外,还有俩个跟母版页对应的占位符。在内容页中的占位符中编辑的内容。在运行时都会被渲染到母板页对应得占位符中去。
- 母板页、子母板页、内容页的嵌套 -2
网页开发中,会需求用到多重嵌套母板页。上一级用
<asp:ContentPlaceHolder id="head" runat="server"></asp:ContentPlaceHolder>
定义占位符,下一级用<asp:Content ID="puntent1" ContentPlaceHolderID="head" Runat="Server"></asp:Content>
。在下一级占位符标签中用ContentPlaceHolderID
属性指定上一级占位符。
- 访问母板页的控件( Master.FindContorl("控件名")) -3
由于运行的是内容页,所以无法之接用
this
调用母板页中的控件。在内容页中可用Master.FindContorl("控件名")
方法获取母板页中的控件
注:该方法要在Page_LoadComplete
方法中使用。否则没有效果。注解如下
- Page_Load() :页面开始加载执行该方法。
- Page_LoadComplete() : 页面加载完成后执行该方法
- 内容页访问母板页的属性
@MasterType指令访问;描述复杂见代码吧
- MasterPage.master.cs
定义一个属性
string mstring = " ";
public string Mstring {
get { return mstring; }
set { mstring = value; }
}
- Default.aspx
插入如下代码,VirtualPath属性指定母板文件
<%@ MasterType VirtualPath="~/MasterPage.master" %>
- Default.aspx.cs
配置完MasterType后,就可以通过Master
访问母版文件属性了
Master.Mstring = "Welcom";
如果有疑问或者需要完整案例源码的可以评论区留言给我,❤ biu~