电脑故障

位置:IT落伍者 >> 电脑故障 >> 浏览文章

Page


发布日期:2024/5/4
 

网页的生命周期列表

PreInit ()

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

>Init

>InitComplete ()

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

>PreLoad ()

>Load

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

>LoadComplete ()

>If not PostBack则创建子控件

>PreRender

>PreRenderComplete ()

>保存控件/视图状态

>SaveStateComplete ()

>Render

>Unload

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

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

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

事件 > 方法名

PagePreInit > Page_PreInit

ControlInit > Page_Init

PageInitComplete > Page_InitComplete

PagePreLoad > Page_PreLoad

ControlLoad > Page_Load

PageLoadComplete > Page_LoadComplete

ControlPreRender > Page_PreRender

ControlDataBinding > Page_DataBind

PagePreRenderComplete > Page_PreRenderComplete

PageSaveStateComplete > Page_SaveStateComplete

ControlUnload > Page_Unload

TemplateControlError > Page_Error

TemplateControlAbortTransation > Page_AbortTransation

TemplateControlAbortTransation > OnTransationAbort

TemplateControlCommitTransation > Page_CommitTransation

TemplateControlCommitTransation > OnTransationCommit

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

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

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

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

重写Override虚方法Onload

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

上一篇:Windows群集开发:1)目录

下一篇:WPF基础教程之属性系统