ASP.Net Web Page深入探讨[3]

[入库:2005年8月18日] [更新:2007年3月24日]

本文简介:选择自 cl2001928 的 blog

                  /// 设计器支持所需的方法 - 不要使用代码编辑器修改
                  /// 此方法的内容。
                  /// </summary>
                  private void initializecomponent()
                  {
                  this.datagrid1.itemdatabound += new
                  system.web.ui.webcontrols.datagriditemeventhandler(this.datagrid1_itemdatabound);
                  this.load += new system.eventhandler(this.page_load);

                  }
                  #endregion
                  这个就是使用vs.net产生的page的代码,我们来看,这里面有两个方法,一个是oninit,一个是initializecomponent,后者被前者调用,实际上这就是页面初始化的开始,在initializecomponent中我们看到了控件的事件声明和page的load声明。
                  下面是从msdn中摘录的一段描述和一个页面生命周期方法和事件触发的顺序表:
                  “每次请求 asp.net 页时,服务器就会加载一个 asp.net
                  页,并在请求完成时卸载该页。页及其包含的服务器控件负责执行请求并将 html
                  呈现给客户端。虽然客户端和服务器之间的通讯是无状态的和断续的,但是必须使客户感觉到这是一个连续执行的过程。”
                  “这种连续性假象是由 asp.net 页框架、页及其控件实现的。回发后,控件的行为必须看起来是从上次 web
                  请求结束的地方开始的。虽然 asp.net
                  页框架可使执行状态管理相对容易一些,但是为了获得连续性效果,控件开发人员必须知道控件的执行顺序。控件开发人员需要了解:在控件生命周期的各个阶段,控件可使用哪些信息、保持哪些数据、控件呈现时处于哪种状态。例如,在填充页上的控件树之前控件不能调用其父级。”
                  “下表提供了控件生命周期中各阶段的高级概述。有关详细信息,请点击表中的链接。”
                  
                  阶段
                  控件需要执行的操作
                  要重写的方法或事件
                  初始化
                  初始化在传入 web 请求生命周期内所需的设置。请参阅处理继承的事件。
                  init 事件(oninit 方法)
                  加载视图状态
                  在此阶段结束时,就会自动填充控件的 viewstate 属性,详见维护控件中的状态中的介绍。控件可以重写
                  loadviewstate 方法的默认实现,以自定义状态还原。
                  loadviewstate 方法
                  处理回发数据
                  处理传入窗体数据,并相应地更新属性。请参阅处理回发数据。
                  注意 只有处理回发数据的控件参与此阶段。
                  loadpostdata 方法
                  (如果已实现 ipostbackdatahandler)

本文关键:ASP.Net Web Page深入探讨
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top