网页的生命周期列表:

  PreInit (2.0)

  ->初始化Theme,应用MasterPage和控件Skin

  ->Init

  ->InitComplete (2.0)

  ->If PostBack,创建子控件并加载控件/视图状态

  ->PreLoad (2.0)

  ->Load

  ->If PostBack,则触发服务器端事件

  ->LoadComplete (2.0)

  ->If not PostBack,则创建子控件

  ->PreRender

  ->PreRenderComplete (2.0)

  ->保存控件/视图状态

  ->SaveStateComplete (2.0)

  ->Render

  ->Unload

  需要注意的是上图中标注(2.0)的事件即ASP.NET 2.0中新增的事件都仅仅是Page类中可以使用,并不是像其他事件一样可以在控件中使用。

  ASP.NET 2.0中可以通过启用(默认值为True)AutoEventWireUp为网页事件创建事件处理程序,并使用隐式为事件处理程序注册的方法名。

  以下是VS2005隐式为各个事件添加关联的方法:

  事件->  方法名

  Page.PreInit   ->  Page_PreInit

  Control.Init   ->  Page_Init

  Page.InitComplete  ->  Page_InitComplete

  Page.PreLoad  ->  Page_PreLoad

  Control.Load   ->  Page_Load

  Page.LoadComplete  ->  Page_LoadComplete

  Control.PreRender   ->  Page_PreRender

  Control.DataBinding ->  Page_DataBind

  Page.PreRenderComplete  ->  Page_PreRenderComplete

  Page.SaveStateComplete   ->  Page_SaveStateComplete

  Control.Unload  ->  Page_Unload

  TemplateControl.Error->  Page_Error

  TemplateControl.AbortTransation   ->  Page_AbortTransation

  TemplateControl.AbortTransation   ->  OnTransationAbort

  TemplateControl.CommitTransation  ->  Page_CommitTransation

  TemplateControl.CommitTransation  ->  OnTransationCommit

  Page基类会在请求的开头阶段调用基类TemplateControl的HookUpAutomaticHandlers方法。该方法遍历上表中所示的方法名,并使用反射在程序员的类中查找具有相同名称和合适特征标的方法。如果找到合适的方法,则创建一个类型合适的委托,并使用该方法初始化它,并将其加入委托列表,该委托在相应事件发生时候将被触发。

  这些事件都是由基类Page的一个虚方法或者Page类从基类Control继承的虚方法触发。所以可以有三种方法注册这些事件:(以Load事件为例)

  1、显式的将一个委托和一个事件关联起来(通常都是在网页的Init处理程序中)

  2、编写一个名为Page_Load的方法,并使其特征标和事件相同

  3、重写Override虚方法Onload

  这个三个方法中重写Override比较快一点点,但是VS2005默认是第二种。

转载于:https://www.cnblogs.com/sk-net/archive/2008/10/10/1308295.html

.net网页的生命周期列表相关推荐

  1. ASP.NET的网页代码模型及生命周期

    第4章  ASP.NET的网页代码模型及生命周期 从本章开始,就进入了ASP.NET应用程序开发的世界.在了解了C#的结构,以及面向对象的概念后,就可以从面向对象的思想开发ASP.NET应用程序.在A ...

  2. asp.net常规页生命周期阶段列表和事件列表

    当我们使用asp.net开发网站,每运行一个页面,这个页面都将经历一个生命周期.了解页的生命周期非常重要,因为这样我们才能在合适的生命周期编写代码实现预期效果.网上有一句话概括非常精辟:"D ...

  3. 【15】Vue:02-Vue表单基本操作、表单修饰符、自定义指令、计算属性computed、侦听器watch、过滤器、生命周期、数组变异方法、替换数组、动态数组响应数据、图书列表案例、TODOS案例

    文章目录 day02 Vue常用特性 表单基本操作 表单修饰符 自定义指令 Vue.directive 注册全局指令 Vue.directive 注册全局指令 带参数 自定义指令局部指令 计算属性 c ...

  4. Vue3基础——条件渲染、列表渲染、事件事件修饰符、父子组件间的数据传递、生命周期钩子

    文章目录 p12 条件渲染v-if与v-show p13 列表渲染v-for p14 事件与参数和事件修饰符 p15 表单的数据双向绑定 p16 组件 与 父组件传递数据给子组件 -- 方式props ...

  5. 【微信小程序-原生开发】实用教程06-轮播图、分类页签 tab 、成员列表(含Tdesign升级,切换调试基础库,设置全局样式,配置组件按需注入,添加图片素材,wx:for,生命周期 onLoad)

    开始前,请先完成首页的开发,详见 [微信小程序-原生开发]实用教程05-首页(含自定义调试模式.插入图片.图文排版.底部留白.添加本地图片) https://blog.csdn.net/weixin_ ...

  6. php网页生命周期函数,PHP的生命周期

    PHP的生命周期 php本身的生命周期是在命令行执行php test.php程序的生命周期(也就是cli) 整个过程如下: 执行php test.php 调用每个扩展的模块初始化程序 请求test.p ...

  7. .NET与java的MVC模式(3):ASP.NET 页生命周期概述

    ASP.NET 页生命周期概述 来源:MSDN ASP.NET 页运行时,此页将经历一个生命周期,在生命周期中将执行一系列处理步骤.这些步骤包括初始化.实例化控件.还原和维护状态.运行事件处理程序代码 ...

  8. ASP.NET 页生命周期概述

    ASP.NET 页运行时,此页将经历一个生命周期,在生命周期中将执行一系列处理步骤.这些步骤包括初始化.实例化控件.还原和维护状态.运行事件处理程序代码以及进行呈现.了解页生命周期非常重要,因为这样做 ...

  9. Django框架深入了解_01(Django请求生命周期、开发模式、cbv源码分析、restful规范、跨域、drf的安装及源码初识)

    阅读目录 一.Django请求生命周期: 二.WEB开发模式: 三.cbv源码分析: 四.认识RESTful 补充知识:跨域 五.基于原生django开发restful的接口 六.drf安装.使用.A ...

  10. PHP内核的学习--PHP生命周期

    一切的开始: SAPI接口 SAPI(Server Application Programming Interface)指的是PHP具体应用的编程接口, 就像PC一样,无论安装哪些操作系统,只要满足了 ...

最新文章

  1. OneinStack一键部署操作说明
  2. linux kvm百度云,如何在 Ubuntu Linux 上使用 KVM 云镜像
  3. 以下用于数据存储领域的python第三方库是-python第三方库系列之一--json
  4. AI公开课:19.04.10颜水成—360副总裁《人工智能:观察与实践》课堂笔记以及个人感悟—191017再次更新
  5. js: live和die,bind和unbind
  6. ssas 度量值属性_SSAS多维立方体中的初始属性和度量
  7. bzoj 1682: [Usaco2005 Mar]Out of Hay 干草危机(最小生成树)
  8. 金融业大整顿,是要回到十年前的水平吗?
  9. SEO之关键词选择原则
  10. 驾校一点通电脑版客户端 v7.1 最新PC版
  11. win64 oracle下载,oracle 11g 64位下载
  12. 数字逻辑电路——简单知识点整理(乱)
  13. 爱创课堂每日一题-你做的页面在哪些流览器测试过?
  14. 计蒜客 难题题库 205 图书ISBN号码
  15. java时间戳转换日期格式_Java时间戳与日期格式字符串的互转
  16. 坐标系基础相关知识:右手定则
  17. ch1_系统启动_setup.S
  18. 网络营销策略的前瞻性和大局观念
  19. C# SolidWorks 二次开发 API-删除工程图中的图片与插入二维码
  20. python之路1:介绍和入门

热门文章

  1. Oracle基础 10 表 table
  2. JSP转译成Servlet详细过程
  3. 操,escape sequence的输入方法我以前找过一次,这次又忘了,又找了一次,记下来,...
  4. TrackMouseEvent 与_TrackMouseEvent
  5. fstream流对象形参时出现的错误问题(codeblocks+gcc)
  6. 数据层处理和性能优化
  7. 宇宙最强vscode教程(基础篇)
  8. rnqoj-28-合唱队形-最长上升子序列
  9. 11月22日学习内容整理:bootstrap居中处理和组件,常用组件
  10. 如何搭建一个WAMP环境