欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ASP.NET中Page.IsPostBack属性

程序员文章站 2022-06-30 16:56:40
web程序的运行方式 客户端输入网址访问服务器的一个网页,客户进行相应的操作之后通过表单提交给服务器进行处理。每次提交服务器都会从新执行一次该网页下对应的程序!...

web程序的运行方式

客户端输入网址访问服务器的一个网页,客户进行相应的操作之后通过表单提交给服务器进行处理。每次提交服务器都会从新执行一次该网页下对应的程序!



Page_Load事件
执行时间,页面第一加载的时候执行,每次页面提交给服务器操作或刷新页面时执行。

作用:(1)Page_Load事件每次加载页面的时候都执行我们可以用他来绑定数据来显示。
(2)有时候我们需要页面初始化(第一次加载)执行一些程序,再次加载的时候不在执行!



Page.IsPostBack属性
作用:服务器判断页面是不是第一加载,服务器第一次响应客户端的请求Page.IsPostBack返回false。当页面提交表单发给服务器进行处理的时候,Page.IsPostBack返回为true。
如果有些控件的AutoPostBack属性被设置为true,那么当该控件的状态被改变后,也会使表单提交给服务器。(AutoPostBack属性,它只有两个bool值,true/false。如果这个属性被设置成false,那么点击后就不会立刻将变化传给服务器处理,也就不会有该控件的SelectedIndexChanged事件。)

例子:

 protected void Page_Load(object sender, EventArgs e)  //页面每次加载执行的程序
        {
            //页面第一次加载执行的程序!
            //(第一次Page.IsPostBack为false,!Page.IsPostBack为true执行下面清空代码,再次加载!Page.IsPostBack为false清空代码不在执行)
            if(!Page.IsPostBack )      
            {
            this.txtUserName.Text = "";   //清空
            this.txtUserPwd.Text = "";
            }

            //每次页面加载的时候执行,该功能也可以用于数据绑定
            this.btnExit .Attributes .Add("Onclick","window.close();");
        }

        protected void btnLogin_Click(object sender, EventArgs e)   //登录事件
        {
            if (this.txtUserName.Text == "a" && this.txtUserPwd.Text == "a")  //简单测试判断用户名和密码是否正确
            {
                 Response.Write ("登录成功"); //用户名和密码正确显示登录成功
            }
            else { 
                Response.Write ("登录失败");
            }

        }

总结:

每次当表单提交给服务器,就会被重新加载,启动Page_Load事件,执行Page_Load事件处理程序中的所有代码,所以通过判断Page.IsPostBack属性的true和false来编写第一执行和每次加载时的代码!