asp.net 母版页学习笔记

看来父亲对儿子永远是最了解的。看了Asp.net之父Scott的文章:Master Pages: Tips, Tricks, and Traps   后,我有一种豁然开朗的感觉——讲的透彻明白,讲的好啊——虽然只看了一半~~~

不过收获还是很多的

1.虽然叫母版页,英文名:MasterPage,给人感觉它就是内容内的老大,但实际上它只是内容页的一个子控件。

2.事件的触发顺序:除了Init()和Unload()之外的所有事件都是从最外面到最里面被激发的。

3.他部分的改变了页生命周期触发事件内所做的事情。如果没有用母版页,在PreInit事件内会生成所有控件,但如果引用了母版页,在Init事件内才生成控件及控件的引用,因为内容页中的所有控件都包含在“ContentPlaceholder”里,而“ContentPlaceholder”其实就是母版页的一个子控件。现在母版页被处理的过程就相当于内容页中的一个控件。虽然页的PreInit()是第一个被触发的事件,但是用户控件和母版页是没有这个事件的,所以在页的Page_PreInit()方法中,母版页和用户控件都不会被初始化,而是在Init()事件之后。正因为如此,所以所有在母版页或内容页内的赋值一律会记入ViewState(默认情况下)。

4.页面指令:MasterType  能很方便的实现对母版页的引用。

5.交互:对于母版页静态内容的引用,最好在母版页内做成属性,对于母版页内动态内容的引用,最好在母版页内做成事件。

 

以上是我看了将近一半后的心得,是翻译过来的,不过没有翻译完全。在网上找了找没有找到全部都翻译了的。过几天有了时间我自己来把剩下的部份翻译一下吧。

 

参考的文章:

Asp.net2.0页面的生命周期【转】

http://goldentune.iteye.com/blog/280337

母版页和工厂模式

http://www.cnblogs.com/lincats/archive/2008/04/09/1145626.html

Master Pages: Tips, Tricks, and Traps  

http://www.odetocode.com/Articles/450.aspx

ASP.NET 2.0 母版页提示、窍门和技巧      (上面的译文,只译了近一半)

http://www.cnblogs.com/lincats/archive/2008/04/12/1150720.html#1528369

你可能感兴趣的:(asp.net)