[NET]ASP.NET 2.0学习笔记—— Master Page

ASP.NET 2.0学习笔记—— Master Page

    首先,因为这篇内容很少,所以废话居多。顺便提一下,有空在这儿看我这种闲人的笔记并发表详论,甚至有空看电脑报的大叔,您不如多发点时间去做点大叔应该做的事吧。本人不仅虚伪,而且不喜欢任何有意义或无意义的批评。Just For Fun! No Class!

    CSDN不知道是为了强烈证明微软的SQL SERVER的强健性,每日每夜总要无数次地为我们展现连接池满的异常提示。为了删除发表上一篇文章时按了N次F5的后遗症,我再一次NF5,总算把多余的文章给删除了。

    上次提到的是主题和样式,而这回要提到的是Master Page(有称呼为母页面或者主页面的,总觉得不是很清楚,因此使用英文原词)也是ASP.NET 2.0针对WEB特性的改进之一吧。感觉2.0把普通的WEB特性都引入到服务器了。Master Page从设计上来看有点像是服务器端的框架。

    不管是ASP开始的include还是ASP.NET的用户控件,都是页面公共部分的一个解决方案。而2.0引入的Master Page则给了一个更好的选择。

    Master Page实际上更像Dreamweaver的模板,只不是,它是实际存在的,而不像Dreamweaver只是存在于设计时。Master Page定义了一个共同风格站点的框架,在它的内部使用占位符来表示实际可以修改的部分。具体语法如下。

    在页面的声明中取代Page指令的是Master指令,如<%@ Master Language="C#" %>。Master Page中的语法和普通的页面并没有多少差别,不过有一个占位符控件。如<asp:contentplaceholder id="FlowerText" runat="server"/>。在占位符中的内容则是它的默认内容,如果在使用这个Master Page的ASPX页面中没有为这个占位符提供新的定义,那么它将显示它的默认内容。为了和普通页面区分开来,Master Page以后缀名.master结束。

    在页面中使用Master Page的方法是在Page的声明中的MasterPageFile属性指定Master Page的路径。在页面中可以通过定义占位符的内容来显示不同的效果。语法如下(例子Copy自QuickStart):

<asp:content id="Content1" contentplaceholderid="FlowerText" runat="server">
    With sunshine, water, and careful tending, roses will bloom several times in a season.
</asp:content>

    实际上,页面中如果引用了Master Page,就只能定义占位符对应的内容了。那么不同文件的标题呢?在Page指令中。一个Title属性指定了每页的标题。

    Master Page并没有解决链接的相对路径问题,非常遗憾,我们还是得使用绝对路径或者应用程序相关路径(ASP.NET特定的~)来为不同路径下的引用解决路径问题。

    为了在代码中调用并修改Master Page的内容,在页面中加入如下指令<%@ MasterType VirtualPath="Site.master" %>。在代码中使用Master. 就可以调用Master中的内容了,这里的调用有两种方法,提供强类型方式的属性或者直接操作Master Page中的控件。

    Master Page是可以嵌套的,可以轻松为一个站点制定一个总的框架,再为每个部分制定一个更详细的框架。
在一个Master Page中引用另一个Master Page的语法和Page是一样的,因此,它也只能包含asp:content这样的东东了。

参照[http://book.csdn.net/bookfiles/185/1001858471.shtml]

    最近的学习都缺少实践,但是对于(形容词略去大约500个字)的我来说,it's nothing。如果在实践后有什么新的看法,再写新的笔记吧。

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值