关于!this.IsPostBack 使用介绍

来源:互联网 发布:淘宝哪种推广方法最好 编辑:程序博客网 时间:2024/05/22 17:22

起因:今天就由于一个很简单的RadioButton控件,我怎么调试,无论那个checked了,结果都执行

if (rdoWork0.Checked == true)
            {
                Status = 0;
            } 这句话,但是很纳闷,结果原来他一直执行我的showinfo(ID)这个方法,这里面有这样一个语句

 private void ShowInfo(int ID)
        {
            if (model.WorkStatus == 0)
            {
                this.rdoWork0.Checked = true;
            }
            else
            {
                this.rdoWork1.Checked = true;
            }
        }所以我即使点击了
rdoWork1这个rediobutton,if (rdoWork0.Checked == true)也是执行的。


if (!this.IsPostBack)使用:

if (!this.IsPostBack)

获取一个值,该值是否正被首次加载和访问。

if(!this.IsPostBack)
{

// code

}
通常用在page_load中,获取一个值,该值指示该页是否正为响应客户端回发而加载,或者它是否正被首次加载和访问,如果是,则为true;否则为 false。


如果我们需要某些代码只需要执行一次,最好的选择当然是放在

if(!this.IsPostBack)
{

}   里面.

如果我们不写

if(!this.IsPostBack)
{

那么,无论是post,还是get请求,都会在执行以下page_load里面的内容。


总之:首次加载和访问if (!this.IsPostBack),这里面的内容是执行的,再次加载和访问将不再执行。


原创粉丝点击