zoukankan      html  css  js  c++  java
  • 手工调试自定义控件各主要方法执行顺序(分运行时和设计时)

    继承TextBox,override各个方法,分别下断点调试。
    ctor为构造函数
    在构造函数中,通过代码:
    this.Text = (new Random(DateTime.Now.Millisecond)).Next(100000, 999999).ToString();
    调试时,盯着this.Text,就知道是否还在这个对象里面


    运行时调用顺序
    ctor
     CreateControlStyle
    ApplyStyleSheetSkin
    OnInit
    TrackViewState
    Page_Load
    OnLoad
    EnsureChildControls
     CreateChildControls
    OnPreRender
    SaveViewState
    SaveViewState
    HasControls
    RenderControl
     Render
      RenderBeginTag
       AddAttributesToRender
      RenderEndTag
    OnUnload

    设计时调用顺序
    ctor
     CreateControlStyle
    OnInit
    TrackViewState
    第一次打开页面设计视图时,执行一次上面方法
    以后每次从代码视图切换到页面视图,都执行一次上面的方法,
    再执行下面的方法,形成了两个控件,
    展现出来的,是下面方法创建的控件,
    但从页面视图切换到代码视图时,上面的方法触发UnLoad
    注意:第一次打开IDE,打开页面视图时,上面方法执行两次,才到下面方法执行一次
    ctor
     CreateControlStyle
    RenderControl
     Render
      RenderBeginTag
       AddAttributesToRender
      RenderEndTag

  • 相关阅读:
    rsyslogd 日志服务
    Java PropertiesLoader 工具类 开发者使用
    1k纯JS脚本的3D玫瑰
    Python ConfigParser的使用
    一些比较精妙的宏定义
    关于realloc的调整内存方式
    初学javascript代码
    PHP中this,self,parent的区别
    PHP数据库操作基类(单例模式)
    php之规范编程命名
  • 原文地址:https://www.cnblogs.com/nnhy/p/608694.html
Copyright © 2011-2022 走看看