zoukankan      html  css  js  c++  java
  • ASP.NET Page执行顺序如:OnPreInit()、OnInit()

    当页面进行回发时,如点击按钮,以上事件都会重新执行一次,这时的执行顺序为:
    1. OnPreInit
    2. OnInit
    3. OnInitComplete
    4. OnPreLoad
    5. Page_Load
    6. OnLoad
    7. Button_Click
    8. OnLoadComplete
    9. OnPreRender
    可以看到,Button_Click事件位于OnLoad之后执行,可以测试一下:

    public partial class TestControls : System.Web.UI.Page
    {
            static int count = 0;
            protected void Page_Load(object sender, EventArgs e)
            {
                Response.Write(count+ "Page_Load <br />");
                count++;
            }
            protected override void OnPreInit(EventArgs e)
            {
                base.OnPreInit(e);
                Response.Write(count + "OnPreInit <br />");
                count++;
            }
            protected override void OnInit(EventArgs e)
            {
                base.OnInit(e);
                Response.Write(count + "OnInit <br />");
                count++;
            }
            protected override void OnLoad(EventArgs e)
            {
                base.OnLoad(e);
                Response.Write(count + "OnLoad <br />");
                count++;
            }
            protected override void OnPreLoad(EventArgs e)
            {
                base.OnPreLoad(e);
                Response.Write(count + "OnPreLoad <br />");
                count++;
            }
            protected override void OnLoadComplete(EventArgs e)
            {
                base.OnLoadComplete(e);
                Response.Write(count + "OnLoadComplete <br />");
                count++;
            }
            protected override void OnInitComplete(EventArgs e)
            {
                base.OnInitComplete(e);
                Response.Write(count + "OnInitComplete <br />");
                count++;
            }
           protected override void OnUnload(EventArgs e)
            {
                base.OnUnload(e);
            }
            protected override void OnDataBinding(EventArgs e)
            {
                base.OnDataBinding(e);
                Response.Write(count + "OnDataBinding <br />");
                count++;
            }
            protected override void OnPreRender(EventArgs e)
            {
                base.OnPreRender(e);
                Response.Write(count + "OnPreRender <br />");
                count++;
            }
            protected void btnGraphics_Click(object sender, EventArgs e)
            {
                //Bitmap bmp = new Bitmap(10, 10);
                //Graphics g = Graphics.FromImage(bmp);
                Response.Write(count + "btnGraphics_Click <br />");
                count++;
            }
    }
  • 相关阅读:
    【PaddlePaddle系列】Executor逐步训练模型
    【PaddlePaddle】自然语言处理:句词预测
    【PaddlePaddle系列】CIFAR-10图像分类
    【图像处理】灰度图、亮度峰值极值查找
    【PaddlePaddle系列】报错解决方法合集 (不定时更新)
    【PaddlePaddle系列】手写数字识别
    Thymeleaf 基本用法总结
    Eclipse+Marven + spring mvc 新建一个 Hello world 项目
    Java EE 开发环境搭建
    vue.js安装过程(npm安装)
  • 原文地址:https://www.cnblogs.com/wolfocme110/p/4173194.html
Copyright © 2011-2022 走看看