最近在学习母板页,写了一个简单的测试:
分别在母板页和使用该母板页的Default页面中写了三个事件: Page_Init , Page_Load, page_loadcomplete,,并在每个事件里面弹出一句话。
运行结果如下:
母 板:Page_Init
Default:Page_Init
Default:Page_Load
母 板:Page_Load
Default:page_loadcomplete
我想问的是:母板页的page_loadcomplete事件为什么没有执行??上面的事件为什么是按这种顺序执行?
你是怎么弹出一句话的?这个顺序就是事件触发的顺序,以前我也留意过,我想肯定有它的道理。其实也不用管他,你要是确实想知道用reflactor看看源代码就知道了,或许没什么原因。
模板页的LoadComplete为什么没有执行我就不清楚了,但是我知道这种执行顺序的原因:ASP.NET引入模板页后,生成页面的行为是把模板页的东西跟内容页的东西结合起来,粘滞在一起的.按照页面的声明周期,我们在load之前必须init所以,在init的时候,先调用了模板页的init,然后是内容页的,init....