Asp.NET页面事件加载的顺序是什么样的


本文摘自PHP中文网,作者巴扎黑,侵删。

这篇文章主要给大家介绍了关于Asp.NET页面中事件加载的先后顺序,文中通过图文以及示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。

本文主要给大家介绍了关于Asp.NET页面事件加载先后顺序的相关内容,分享出来供大家参考学习,下面话不多说,来一起看看详细的介绍:

ASP.NET 母版页和内容页中的事件

我们知道母版页和内容页都可以包含控件的事件处理程序。对于控件而言内容页中的控件在内容页中引发事件,母版页中的控件在母版页中引发事件。控件事件不会从内容页发送到母版页,也不能在内容页中处理来自母版页控件的事件,它们只会在自己事件内部进行处理。

下面是母版页(Master)与内容页(ContentPage)合并后事件的发生顺序:


1

2

3

4

5

6

7

8

9

10

11

Master页面控件 Init 事件。

ContentPage页面控件 Init 事件。

Master页  Init 事件。

ContentPage页 Init 事件。

ContentPage页 Load 事件。

Master页  Load 事件。

ContentPage页面控件 Load 事件。

ContentPage页面 PreRender 事件。

Master页面  PreRender 事件。

Master页面控件 PreRender 事件。

ContentPage页面控件 PreRender 事件。

母版页和内容页中的事件顺序对于页面开发人员并不重要。但是,如果创建的事件处理程序取决于某些事件的可用性,了解母版页和内容页中的事件顺序很有帮助。

Asp.Net中页面事件加载的先后顺序

1、单独一个Page 执行中将按照如下顺序激活事件:


1

2

3

4

5

6

7

8

Page.PreInit

Page.Init

Page.InitComplite

Page.PreLoad

Page.Load

Page.LoadComplete

Page.PreRender

Page.PreRenderComplete

2、如果页面从另一个页面继承,如BasePage:System.Web.UI.Page ,在BasePage中添加了一下验证功能,如是否登录、是否拥有权限等方面的检查,而其它页面从BasePage继承,则BasePage和最终Page的事件激活顺序是:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

BasePage.PreInit

Page.PreInit

BasePage.Init

Page.Init

BasePage.InitComplite

Page.InitComplite

BasePage.PreLoad

Page.PreLoad

BasePage.Load

Page.Load

BasePage.LoadComplete

Page.LoadComplete

BasePage.PreRender

Page.PreRender

BasePage.PreRenderComplete

Page.PreRenderComplete

3、如果使用了MasterPage,则MasterPage中的事件和ContentPage中的事件按照下面顺序激活:


1

2

3

4

5

6

7

8

9

10

11

ContentPage.PreInit

Master.Init

ContentPage.Init

ContentPage.InitComplite

ContentPage.PreLoad

ContentPage.Load

Master.Load

ContentPage.LoadComplete

ContentPage.PreRender

Master.PreRender

ContentPage.PreRenderComplete

需要注意的是Master里面是没有PreInit事件。

阅读剩余部分

相关阅读 >>

如何使用会话状态(asp.net web 服务)

全开源asp.net工作流平台的详细介绍

asp.net core实例教程之配置

asp.net动态输出404 http状态代码

防止sql注入的asp.net方法实例解析

实例分析asp.net在mvc5中使用miniprofiler监控mvc性能的方法

分享asp.net学习笔记(11)webpages php

asp.net中关于webapi与ajax进行跨域数据交互时cookies数据的传递

有关asp.net core 中的多语言支持的详细介绍

分享asp.net学习笔记(12)razor 简介

更多相关阅读请进入《asp.net》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...