Asp.net 2.0的一些小心得 (三) Master Page的使用

       Asp.net 2.0中,推出了Master pageMaster page同样可以一次定义一个模板中的内容,而不再累赘相同的代码。在以往,开发人员只能用自己的办法来处理每个页面中相同的地方。比如利用用户控件、Html标记符等能,而现在Asp.net 2.0中可以把一个或者多个的布局创建为Master page,在把它们分配给aspx页面,同样,master page支持可视化设计。

       小虫写的这些系列文字中,不会去罗嗦一些简单的内容,只是把自己在这大半年来的一些小心得写出来,因此,会有很多遗漏之处,还望各位看客海涵。

       下面的几点,小虫就不一一加以详细说明了:比如创建master page,通过master page创建aspx页面,master page的使用等等。大家如果有问题,可以看看msdn,呵呵,估计也不用看了,拿来一用就会了。

 

一、基于master pageaspx页面的事件调用顺序

小虫经过跟踪,得到以下顺序:

1.    Master page中的用户控件的 page_init

2.    Aspx页面中的用户控件的 page_init

3.    Master pagepage_init

4.    Aspx page_init

5.    Aspxpage_load

6.    Master pagepage_load

7.    Master page中的用户控件的 page_load

8.    Aspx页面中的用户控件的 page_load

       这里,大家要注意一下,page_initpage_load的调用顺序刚好是相反的。

 

二、在页面执行过程中访问manster page

作为一个master page,我们当然不希望只是作为一个布局工具来使用,而希望它作为一个类似一个公共基类来使用,在使用中,可以用页面的.Master属性来使用,可惜这只是一个只读属性,否则就应该可以在运行中动态切换master page,呵呵,不知道正式版本出来能否有这个功能啊。

 

三、嵌套使用Master page

呵呵,小虫原来也没想到,master page居然可以嵌套使用,有一次,反正也没什么事情,小虫在准备修改master page的时候,无意中点了代码的第一行,正巧是在属性框内,突然发现,<Master>居然有一个MasterPageFile的属性,呵呵,设置了一下,果然可以,其实自己加也容易,就是在Master page<Master>里面加上 MasterPageFile=”<你的上层Master Page文件>”就可以了,呵呵。


2005-08-17 21:01 | 春鱼
运行时不仅可以访问 master page, 而且可以更改 master page.
感谢大侠斧正,那么请问,如何更改,以前我做 bate 1的时候可以根据不同的显示模式设置master page,但是bate 2去掉了这个功能.



一个在Mircosoft大树上蛀了几个小洞的虫子
联系Mail: 代码虫
欢迎访问小虫目前做的主页: http://www.gofordesign.com   (使用asp.net 2.0)