ASP.NET网页模板基础知识介绍
创始人
2024-04-21 05:30:31
0

在一个网站中,往往各个页面都具有相同的部分,比如:页眉、页脚,页眉展示网站标识、导航栏等,页脚展示版权等,如果每一个页面都直接写入这些内容势必给开发和维护带来巨大的困难。

在 ASP 中,我们常使用 include 包含文件来解决,在 ASP.NET 中,我们利用网页模板来解决,步骤很简单:

首先建立一个母版页( .master 文件)。

然后建立一个内容页,用内容页去“实例化”母版。

母版页

母版页

打开 Visual Web Developer,新建一个 .master 文件,可以看到其编译指令是 Master,而不是 Page,母版页中最重要的控件是 ContentPlaceHolder,它将受引用母版的文件的控制,下面的示例中我们用了三个 ContentPlaceHolder。

  1. 〈%@ Master Language="C#" %〉  
  2. 〈!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0   
  3. Transitional//EN" "http://www.w3.org/TR/  
  4. xhtml1/DTD/xhtml1-transitional.dtd"〉  
  5. 〈script runat="server"〉  
  6. 〈/script〉  
  7. 〈html xmlns="http://www.w3.org/1999/xhtml" 〉  
  8. 〈head runat="server"〉  
  9. 〈title〉Untitled Page〈/title〉  
  10. 〈/head〉  
  11. 〈body〉  
  12. 〈form id="form1" runat="server"〉  
  13. 〈div〉  
  14.  
  15. 〈asp:ContentPlaceHolder id="m_header"   
  16. runat="server"〉  
  17. 〈asp:BulletedList ID="nav" runat="server"〉  
  18. 〈asp:ListItem Text="导航一"〉〈/asp:ListItem〉  
  19. 〈asp:ListItem Text="导航二"〉〈/asp:ListItem〉  
  20. 〈/asp:BulletedList〉  
  21. 〈/asp:ContentPlaceHolder〉  
  22.  
  23. 〈asp:ContentPlaceHolder ID="m_content"   
  24. runat="server"〉  
  25. 〈/asp:ContentPlaceHolder〉  
  26.  
  27. 〈asp:ContentPlaceHolder ID="m_footer"   
  28. runat="server"〉  
  29. 〈p〉版权所有〈/p〉  
  30. 〈/asp:ContentPlaceHolder〉  
  31. 〈/div〉  
  32. 〈/form〉  
  33. 〈/body〉  
  34. 〈/html〉  

内容页

内容页

打开 Visual Web Developer,新建一个 .aspx 文件,除了编译指令,其它全部删除。

指定 MasterPageFile 和 Title。MasterPageFile 表示使用哪个母版文件,Title 相当于 HTML 中的 〈title〉〈/title〉。

插入 Content 控件,并在 Content 控件中指定 ContentPlaceHolderID 表示要用这个 Content 中的内容替换母版中的 ContentPlaceHolderID 中的内容。注意,并不需要处理母版文件中的每一个 ContentPlaceHolder,如果没有对应的 Content,则 ContentPlaceHolder 使用母版文件中标明的内容。文件代码如下:

  1. 〈%@ Page Language="C#"   
  2. MasterPageFile="MasterPage1.master" Title="首页" %〉  
  3. 〈asp:Content ID="content" runat="server"   
  4. ContentPlaceHolderID="m_content"〉  
  5. 〈p〉这里是首页的内容〈/p〉  
  6. 〈/asp:Content〉  

完成

至此,一个最基本的 ASP.NET 模板应用就介绍完了。ASP.NET 模板还有许多细节与高级的东西,我们会在以后的文章中对ASP.NET页面模版做更多的介绍。。

【编辑推荐】

  1. ASP.NET环境下的Shell函数
  2. 在ASP.NET中向数据库批量插入数据
  3. ASP.NET用Post方式向网页发送数据
  4. ASP.NET 2.0部署WEB应用程序浅析
  5. ASP.NET中的HttpWorkerRequest对像
  6. 介绍ASP.NET MVC框架

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...
2012年第四季度互联网状况报... [[71653]]  北京时间4月25日消息,据国外媒体报道,全球知名的云平台公司Akamai Te...