Page.IsPostBack

来源:互联网 发布:语音加速器软件 编辑:程序博客网 时间:2024/05/21 08:09

学习牛腩新闻发布系统的时候,用到了Page.IsPostBack,现在学习Asp.net的时候又遇到了,有一句话说得好,遇到就是缘分,现在就来看看它到底是怎么回事儿。

Page.IsPostBack用来判断当前网页是否是第一次加载,如果是第一次加载,Page.IsPostBack的值为false,反之,则为true。OK,说完了,看起来很简单。

现在举一个数据绑定的例子来加深一下对它的体会(反例,不进行判断):

首先,我添加一个ListBox控件,有代码如下:

<asp:ListBox ID="ListBox1" runat="server" ></asp:ListBox>

然后,我给它简单的绑定三个值A、B、C,代码如下:

protected void Page_Load(object sender, EventArgs e)
{
ListBox1.Items.Add("A");
ListBox1.Items.Add("B");
ListBox1.Items.Add("C");
}

最后,我添加一个Button控件(属于Web控件),这个按钮是放在form表单中的,单击按钮会引起页面的刷新,ListBox1就会重复的添加ABC。我再添加一个Submit控件(属于HTML控件)放到表单中,单击按钮同样会引起页面刷新,ListBox1还是会重复添加ABC。不过,如果把Submit控件放到表单之外,单击Submit按钮并不会引起重复添加现象,在这种情况下,即便给它加上runat="server"也不会引起页面刷新。

所以,我们需要在页面的Page_Load事件中加以判断:

        protected void Page_Load(object sender, EventArgs e)        {            if (!Page.IsPostBack)            {                ListBox1.Items.Add("A");                ListBox1.Items.Add("B");                ListBox1.Items.Add("C");            }        }



感谢您的阅读~



原创粉丝点击