asp.net基础学习之前端页面布局(3)

创建内容页
 •母版页如果没有内容页来使用它,那就没有任何用处。通为了将一个内容页基于一个母版页,通常在添加新网页到站点时,就指定母版页,为此,只需选中“添加新项”对话框底部的“选择母版页”复选框即可。当然,也可以在直接在页面的@Page指令中设置MasterPageFile属性。
 •内容页中只能含有映射到母版页中的控件的控件。而这些控件又可以包含标准标记,如HTML元素和服务器控件声明

在内容页访问母版页中的成员

•在内容页中可以通过编程的方式访问母版页中的成员,包括母版页上的任何公共属性或方法以及任何控件。要实现内容页对母版页中定义的属性或方法进行访问,则该属性或方法必须声明为公共成员(public),也可以对母版页动态地进行访问。 

下面来个示例,使用母版页创建内容页:
 •母版页包括一个或多个 <asp:ContentPlaceHolder
runat="server"/> 控件,在内容页中可以定义要替换的内容。

•内容页中通过添加 Content 控件并将这些控件映射到母版页上的 ContentPlaceHolder控件来创建内容。

添加新项>>母版页>>

MasterPage.master

<form runat="server"> <div> <div> <h1>母版页测试</h1> </div> <div> <div> <h3>左侧导航</h3> <div> <a href="https://www.jb51.net/TestPage.aspx">asp.net</a><br /> <a href="https://www.jb51.net/AnotherTestPage.aspx">CSS</a><br /> <a href="#">HTML</a><br /> <a href="#">JQuery</a> </div> </div> <div> <asp:ContentPlaceHolder runat="server"> 可以被重写的部分 </asp:ContentPlaceHolder> </div> </div> </div> </form>

重写之前的样式:

asp.net基础学习之前端页面布局

内容页:
添加新项>>web窗体
勾选母版页:

asp.net基础学习之前端页面布局


选中刚才的母版页即可:
在代码中间重写母版页的内容:

<asp:Content ContentPlaceHolderID="TestContentPlaceHolder" Runat="Server"> </asp:Content> <asp:Content ContentPlaceHolderID="TestContentPlaceHolder" Runat="Server"> <div> <div> <h4> 这里是另一个内容页(AnotherTestPage.aspx) </h4> <p> &nbsp;&nbsp;&nbsp;&nbsp;Master Page 使您有能力为 web 应用程序中的所有页面(或页面组)创建一致的外观和行为。 Master Page 为其他页面提供了模版,带有共享的布局和功能。Master Page 为内容定义了可被内容页面覆盖的占位符。而输出结果就是 Master Page 和内容页面的组合。<br /> &nbsp;&nbsp;&nbsp;&nbsp;内容页包含您希望显示的内容。 当用户请求内容页时,ASP.NET 会对页面进行合并以生成输出,输出结果对 Master Page 的布局和内容页面的内容进行了合并。 </p> </div> </div> </asp:Content>

asp.net基础学习之前端页面布局

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wjyjsy.html