`

Asp.net事假的执行顺序,非常重要这个算是高级编程部分

阅读更多
ASP.NET 母版页和内容页中的事件

母版页和内容页都可以包含控件的事件处理程序。对于控件而言,事件是在本地处理的,即内容页中的控件在内容页中引发事件,母版页中的控件在母版页中引发事件。控件事件不会从内容页发送到母版页。同样,也不能在内容页中处理来自母版页控件的事件。

在某些情况下,内容页和母版页中会引发相同的事件。例如,两者都引发 Init 和 Load事件。引发事件的一般规则是初始化事件从最里面的控件向最外面的控件引发,所有其他事件则从最外面的控件向最里面的控件引发。请记住,母版页会合并到内容页中并被视为内容页中的一个控件,这一点十分有用。

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

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

关于asp.net中页面事件加载的先后顺序

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 1.1,估计应该是asp.net 2.0,

不过也没有关系,这让我知道了他们有继承时加载的顺序。

即:先加载继承页的,再加载自己的,如果继承页有继承则先加载继承页的继承。

其实是个很简单的内容。顺便写下Page事件(不知道1.1是不是就这些)

事件处理器名称

发生时间

Page_Init

在Web窗体的视图状态加载服务器控件并对其初始化。

这是web窗体生命周期的第一步

Page_Load

在Page对象上载入服务器控件。由于此时视图状态信息是可以使用的,

因此载这里可以用代码来改变空间的设置或者载页面上显示文本。

Page_PreRender

应用程序将要呈现Page对象

Page_Unload

页面从内存中卸载

Page_Error

发生未处理的异常

Page_AbortTransaction

事务处理被终止

Page_CommitTransaction

事务处理被接受

Page_DataBinding

把页面上的服务器空间和数据源绑定载一起

Page_Disposed

Page对象从内存中释放掉。这是Page对象生命周期中的最后一个事件

Init,Load,PreRender事件执行顺序:
1)控件的Init事件
2)控件所在页面的Init事件
3)控件所在页面的Load事件
4)控件的Load事件
5)控件所在页面的PreRender事件
6)控件的PreRender事件
规律:
1)Init事件从最里面的控件(包括用户控件及普通控件)向最外面的控件(页面)引发,Load及PreRender等其他事件从最外面的控件向最里面的控件引发;
2)控件之间相同事件的执行顺序依控件在页面的位置按从左到右,从上到下的先后顺序执行。
注意:
1)切记用户控件也被视为页面中的一个控件;
2)把用户控件作为单独的一个特殊页面来看,它本身及其所包含的控件同样遵守相同的规律;
3)有时在客户端程序(如javascript)中会用到客户端body对像的onload事件,注意这个客户端事件是最后执行,即在服务器端所有事件执行完后才执行。
1
7
分享到:
评论

相关推荐

    ASP.NET高级编程.pdf ASP.NET高级编程.pdf

    ASP.NET高级编程.pdf ASP.NET深入编程.pdf ASP.NET完全入门.doc ASP.NET中文手册.chm C#高级编程.pdf C#说明文档(微软).pdf C#完全手册.pdf C#语言参考.doc Dot NET综合资料库.CHM windows应用高级编程-C#编程篇...

    ASP.NET高级编程

    ASP.NET高级编程。PPT。ASP.NET高级编程,ASP.NET高级编程

    ASP.Net 3.5 高级编程 例子

    在这个"ASP.Net 3.5 高级编程 例子"中,我们可能涵盖了一些关键的高级特性,例如C#编程语言的应用、控件编程、数据访问、安全性、状态管理以及性能优化等。 1. **C#编程**:ASP.NET 3.5通常与C#一起使用,这是一种...

    ASP.NET CORE2.0高级编程.pdf

    ASP.NET CORE2.0高级编程.pdf 电子书 作者:Daniel RothRick Anderson 和 Shaun Luttin ASP.NET Core 是一个跨平台的高性能开源框架,用于生成基于云且连接 Internet 的新式应用程序。 使用 ASP.NET Core,您可以:...

    【免费】ASP.NET MVC5 高级编程[附源码].rar

    ASP.NET MVC5高级编程(第5版.NET开发经典名著)作为Microsoft备受欢迎的MVC技术的最新版本,MVC 5是一个成熟的Web应用程序框架,支持快速的、TDD友好的开发。MVC允许开发人员创建动态的、数据驱动的网站。这样的...

    Asp.net 2.0高级编程(pdf)

    内容代码,使用VB.net和C# 两种解释 <br>第1章ASP.NET2.0概述 1 1.1简史 1 1.2ASP.NET2.0的目标 2 1.2.1开发人员的效率 3 1.2.2管理 5 1.2.3性能和可伸缩性 8 1.3ASP.NET2.0的其他新特性 8 ...

    ASP.NET 2.0高级编程(特别版)》[英文CHM电子书+源代码].

    在全面介绍ASP.NET各种编程技能的同时重点介绍了ASP.NET 2.0版本中的巨大变化,详细阐述了ASP.NET 2.0中所包含的每个新特性。书中提供了大量的实例,可帮助读者快速掌握如何在.NET Framework下构建功能强大的ASP.NET...

    ASP.NET 高级编程 part1 pdf

    内容涵盖了ASP.NET和NET Framework原理,如何创建ASP.NET页面和使用服务器控件,数据处理以及ADO.NET,ASP.NET类库,配置和部署问题,作为数据处理的有机组成部分的XML技术,如何使用Web服务为应用程序提供异步...

    asp.net4.5高级编程(原书代码+数据库文件)

    总的来说,"ASP.NET 4.5高级编程"这个资源包含了这个版本的所有源代码和数据库文件,对于深入学习和理解ASP.NET 4.5的新特性,以及实际项目开发非常有帮助。开发者可以通过研究这些代码,掌握如何利用ASP.NET 4.5...

    ASP.NET&IIS7高级编程 代码

    ASP.NET&IIS7高级编程 代码ASP.NET&IIS7高级编程 代码ASP.NET&IIS7高级编程 代码ASP.NET&IIS7高级编程 代码ASP.NET&IIS7高级编程 代码ASP.NET&IIS7高级编程 代码

    ASP.NET MVC 5高级编程 第5版(中文版)

    ASP.NET MVC5高级编程(第5版.NET开发经典名著)作为Microsoft备受欢迎的MVC技术的最新版本,MVC 5是一个成熟的Web应用程序框架,支持快速的、TDD友好的开发。MVC允许开发人员创建动态的、数据驱动的网站。这样的...

    ASP.NET Web站点高级编程

    **ASP.NET Web站点高级编程** 是一门深入探讨ASP.NET技术在构建高效、复杂Web应用程序方面的高级主题的学科。这门技术涵盖了从基础架构到高级特性的广泛内容,旨在帮助开发者充分利用.NET Framework的功能来创建高...

    ASP.NET 4高级编程:涵盖C#和VB.NET(第7版).part1.rar 第一部分 高清 带目录

    在《ASP.NET 4高级编程:涵盖C#和VB.NET(第7版)》中,由众多优秀作者组成的团队将带领您全面地了解ASP.NET以及ASP.NET4中令人激动的新功能。《ASP.NET 4高级编程:涵盖C#和VB.NET(第7版)》也介绍了如何最大限度地利用...

    《Asp.net 2.0高级编程》(pdf版).rar

    《Asp.net 2.0高级编程》是一本深度探讨Asp.net 2.0技术的专业书籍,PDF版提供了一种方便的电子阅读方式。Asp.net是微软.NET框架下的一个强大Web应用程序开发平台,2.0版本在1.1的基础上进行了大量改进和优化,提升...

    #ASP.NET 4高级编程 涵盖C#和VB.NET 第7版(完整).part2/5

    ASP.NET 4高级编程 涵盖C#和VB.NET 第7版(完整)

    ASP.NET MVC 5高级编程 第5版.pdf

    ASP.NET MVC 5高级编程 第5版.part1,有文件较大,进行压缩分割,需要下载其他部part2,part3分

    ASP.NET.XML C# 高级编程

    ASP.NET、XML和C#是三个在现代软件开发中至关重要的技术领域,它们共同构建了高效、可扩展的Web应用程序。在这本名为“ASP.NET.XML C# 高级编程”的教程中,读者将深入理解如何利用这些技术进行高级开发。 ASP.NET...

    ASP.NET 2.0电子商务高级编程(C#2005版)

    《ASP.NET 2.0电子商务高级编程(C#2005版)PART2》这本书主要探讨了在ASP.NET 2.0框架下,利用C#语言开发高效、安全且功能丰富的电子商务网站的方法。这部分内容可能涵盖了多个关键知识点,包括但不限于以下几个...

Global site tag (gtag.js) - Google Analytics