《ASP NET开发与应用实践》课件第9章.pptx
第9章网站页面结构设计
1.什么是网站页面结构?
2.为什么要学习页面结构?
第9章网站页面结构设计
9.1母版页基本知识
9.2创建母版页
9.3创建内容页
9.4应用母版页
9.1母版页基本知识
母版页类似于HTML页框架,它能够为
ASP.NETWeb应用程序提供一致的页面结
构。
每个ASP.NET页面由母版页和内容页两部分
组成。母版页封装了页面的通用内容,内容页包含页面特有的内容。
9.1.1母版页的代码结构
母版页为具有扩展名.master的ASP.NET文件,它具有可以包括静态文本、HTML元素和服务器控件的预定义布局。代码结构为:
%@MasterLanguage=C#CodeFile=MasterPage.master.csInherits=MasterPage%
formid=form1runat=server
table
trtdasp:ContentPlaceHolderid=Mainrunat=server//td
tdasp:ContentPlaceHolderid=Footerrunat=server//td/tr
/table
/form
/html
◆其中,Master指令代替了ASP.NET页面的Page指令,它的属性与Page指令几乎相同;
◆ContentPlaceHolder控件是一个占位符,它标识页面的特定位置,在运行时由内容页的相关内容所代替。
htmlxmlns=/1999/xhtml
headrunat=servertitleMasterpagetitle/title/headbody
/body
9.1.2内容页的代码结构
内容页是普通的.aspx文件,它与特定的母版页相关联,通过创建各个内容页填充母版页的ContentPlaceHolder控件的内容。代码结构为:
%@PageLanguage=C#MasterPageFile=~/Master.masterTitle=ContentPage1%
asp:ContentID=Content1ContentPlaceHolderID=MainRunat=Server
asp:Labelid=IblMainText=Maincontentrunat=server/
/asp:Content
asp:ContentID=Content2ContentPlaceHolderID=FooterRunat=Server
版权所有2007-01-01
/asp:content
9.1.2内容页的代码结构
其中,Page指令的MasterPageFile属性指定母版页文件的路径,Title属性设置页面标题
o
Content控件是一个容器,用于容纳页面中非通用内容部分,它与母版页中的某个
ContentPlaceHolder控件相关联,为之提
供内容。
内容页中没有html、body、
form等标记。
9.2.3母版页与内容页的关系
母版页的运行原理:
(1)用户通过客户端浏览器请求某页。
(2)ASP.NET引擎获取该请求后,找到相应页面,读取Page指令。如果该指令引用一个母版页,则也读取该母版页。如果这是第一次请求这两个页,则两个页都要进行编译。
(3)将母版页合并到内容页的控件树中。
(4)将内容页的各个Content控件的内容合并到母版页中相应的ContentPlaceHolder控件中。
(5)发送合并页至客户端浏览器。
(6)客户端浏览器呈现得到的合并页。
9.2创建母版页
网页的公共部分应该放在母版页中。每个网页的特定内容应该放在内容页中。
在VisualStudio.NET集成开发环境中,创建母版页与创建普通页面几乎一样。
在“添加新项”对话框中,选择“母版页”。
[例9-2]创建一个菜单程序
有一个主菜单页面,上面有三个按键,分别按动其中一个按键,页面就转向相应的二级页面。采用母版页方式实现。
模板(母版页面)
Default.aspx
Default2.aspx
Default3.aspx
MasterPage.master:
LinkButton1
LinkButton2_
LinkButton3
Default.aspxDefault2.aspxDefault3.aspx
2级页面
2级页面
2级页面
创建母版页程序分析
LinkButton
2015-10版权
口设计口拆分|回源0htmlbody