`
javatoyou
  • 浏览: 1061375 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

.NET页面事件执行顺序

阅读更多

客户发出POST请求-〉创建Page派生类,调用构造函数-〉调用Page类的IHttpHandler.ProcessRequest方法-〉激活Page类的Init事件-〉调用Page类的CreateChildControls虚方法-〉从POST变量和VIEWSTATE中还原服务器端控件状态-〉激活Page类的Load事件-〉激活服务器端控件事件-〉激活Page类的PreRender事件-〉调用Page类的Render虚方法-〉调用Page类的RenderChildren虚方法-〉发送HTTP响应给客户端-〉激活Page类的Unload事件-〉丢弃Page派生类的实例。

Page 执行中将按照如下顺序激活事件:

Page.PreInit
Page.Init
Page.InitComplite
Page.PreLoad
Page.Load
Page.LoadComplete
Page.PreRender
Page.PreRenderComplete

如果页面从令一个页面继承,如BasePage:System.Web.UI.Page,在BasePage中做了一些扩展,如权限检查,而其他页面从BasePage继承,则BasePage和最终Page的事件激活顺序是:

UI.PreInit
Page.PreInit
UI.Init
Page.Init
UI.InitComplite
Page.InitComplite
UI.PreLoad
Page.PreLoad
UI.Load
Page.Load
UI.LoadComplete
Page.LoadComplete
UI.PreRender
Page.PreRender
UI.PreRenderComplete
Page.PreRenderComplete

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

ContentPage.PreInit
Master.Init
ContentPage.Init
ContentPage.InitComplite
ContentPage.PreLoad
ContentPage.Load
Master.Load
ContentPage.LoadComplete
ContentPage.PreRender
Master.PreRender
ContentPage.PreRenderComplete

更进一步,如果ContentPage继承BasePage,那么,各事件的执行顺序将变成:

UI.PreInit
ContentPage.PreInit
Master.Init
UI.Init
ContentPage.Init
UI.InitComplite
ContentPage.InitComplite
UI.PreLoad
ContentPage.PreLoad
UI.Load
ContentPage.Load
Master.Load
UI.LoadComplete
ContentPage.LoadComplete
UI.PreRender
ContentPage.PreRender
Master.PreRender
UI.PreRenderComplete
ContentPage.PreRenderComplete

分享到:
评论

相关推荐

    ASP.NET页面事件执行过程

    了解这些事件的执行顺序对编写高效且健壮的ASP.NET应用程序至关重要。在编写事件处理程序时,开发者可以根据这个顺序来决定何时添加逻辑,以确保数据正确加载、控件正确初始化,以及在页面呈现前完成所有必要的操作...

    ASP.NET 页面事件执行顺序介绍

    代码如下: #region 控件事件 第六步 protected void Button1_Click(object sender, EventArgs e) { //用这些事件来处理特定控件事件,如 Button 控件的 Click 事件或 TextBox 控件的 TextChanged 事件。 //注意 //在...

    ASP.NET 2.0页面执行顺序

    能很直观的了解ASP.NET 2.0页面执行顺序

    aspx页面事件执行顺序

    ASPX页面事件执行顺序是网页开发中至关重要的概念,它涉及到.NET Framework下的ASP.NET应用程序的生命周期管理。在ASP.NET中,每一个.aspx页面经历一系列的事件,这些事件在页面的加载和处理过程中依次触发,允许...

    ASP.NET 页面对象模型

    页面生命周期是ASP.NET页面对象模型的核心概念,包括一系列事件,如初始化、加载、回发数据、验证、呈现和卸载。这些事件提供了开发者介入和控制页面行为的机会。例如,`Page_Load`事件用于在页面加载时执行特定...

    引用asp.net母版页后,母版页和内容页的页面事件执行顺序

    了解这些事件的执行顺序对于编写高效、可靠的ASP.NET应用程序至关重要。通过掌握这一顺序,开发者可以更好地控制页面行为,确保数据的正确处理,以及在合适的时机进行页面操作。在开发过程中,合理利用这些事件可以...

    测试aps.net 页面周期

    ASP.NET 页面生命周期是Web开发中的核心概念,它描述了从用户请求一个页面到服务器响应页面回显给用户的过程中,页面对象经历的一系列...通过实际测试,你可以直观地看到这些事件的执行顺序,更好地掌握你的程序代码。

    ASP.Net页面生命周期

    ASP.NET页面生命周期是ASP.NET应用程序开发中的核心概念,它描述了从用户请求页面到服务器响应完成的整个过程。了解这个生命周期对于高效、准确地编写ASP.NET代码至关重要。 1. **初始化对象** 在页面生命周期的...

    asp.net页面加载顺序1

    以下是ASP.NET页面加载顺序的详细解释: 1. **初始化阶段**: - **构造函数**:在页面被请求时首先调用,用于初始化自定义属性或对象。此时,可以访问`HttpContext`对象,如`QueryString`、`Form`、`Cookies`和`...

    ASP.NET中不同部分的js代码的执行顺序

    通常情况下,这是在ASP.NET页面生命周期中的`Page_Load`方法中完成的。有两种主要的方法来实现这一点:`Page.RegisterStartupScript` 和 `ScriptManager.RegisterClientScriptBlock`。 - **Page....

    ASP.NET委托和事件

    调用委托就像调用一个普通方法一样,它会按顺序执行所有已附加的方法。 ```csharp handler("这是事件消息"); ``` **事件(Event)** 事件是一种特殊类型的委托,用于封装和保护事件源的内部状态,防止未授权的...

    Asp.NET页面中事件加载的先后顺序详解

    以下是对Asp.NET页面事件加载顺序的详细解释: 1. **单独的Page事件顺序**: - `Page.PreInit`:这是页面生命周期的第一个事件,允许在此阶段设置控件属性,例如设置MasterPage。 - `Page.Init`:在此阶段,所有...

    asp页面加载事件顺序

    了解和掌握ASP.NET页面加载事件顺序对于优化代码执行效率,避免不必要的数据处理,以及确保页面在不同阶段的正确行为都至关重要。通过深入理解这些事件,开发者能够更好地控制页面的行为,提高用户体验,同时减少...

    .net C# 委托 调用事件

    ASP.NET页面的生命周期中,事件会按照特定顺序进行处理。例如,先触发控件事件,再触发页面事件。事件处理程序可以通过`Page_Load`等方法订阅控件事件。 总结,委托在C#中是事件处理的核心,它们允许代码之间以...

    专题资料(2021-2022年)ASPNET页面事件执行过程.doc

    以下是对ASP.NET页面事件执行过程的详细解释: 1. **初始化阶段**: - **Page.PreInit**:此事件在页面生命周期的最早阶段触发,用于设置页面属性,如主题、样式表和控件的运行时ID。在这个阶段,母版页和内容页的...

    【ASP.NET编程知识】详解ASP.NET页面生命周期.docx

    ASP.NET页面生命周期是ASP.NET Web Forms开发中的核心概念,它描述了一个ASP.NET页面从请求开始到响应返回给客户端的整个过程。在这个过程中,页面会经历一系列的阶段,每个阶段都有其特定的任务和目的,允许开发者...

    VS ASP.NET中的button点击触发事件

    执行顺序是先执行客户端事件,再执行服务器端事件。如果希望先执行服务器端事件,然后再调用客户端代码,可以使用`RegisterStartupScript`方法在服务器端代码中插入JavaScript代码。例如: ```csharp protected ...

    详解ASP.NET页面生命周期

    这个生命周期包括了初始化、创建控件树、处理用户输入、执行事件处理程序、以及页面的呈现等关键步骤。这些阶段对于开发人员来说至关重要,因为理解了它们的工作机制和顺序,就可以更好地组织代码,避免潜在的问题。...

Global site tag (gtag.js) - Google Analytics