Page.IsPostBack 的注意点

本文描述了一个关于Datagrid在更新项目中遇到的值无法正确刷新的问题,并详细解释了原因在于页面加载时的重复数据绑定。通过检查Page_Load事件处理函数,作者发现即使在更新操作后,由于每次页面加载都会重新绑定数据,导致显示的仍是旧值。通过添加条件判断避免重复绑定,最终解决了问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本人今天作了个datagrid的更新项目,每次更新都不成功,原来在
tring caption = ((TextBox)(e.Item.Cells[1].Controls[0])).Text; 这个更新后值传递不过来,总是原来的值,怎么会这样呢

百思不得其解,我就把代码重新看了几遍,突然发现
page_Load中的代码是 这样写的

protected void Page_Load(object sender, EventArgs e)
       
    {
                   this.gridshow();//绑定数据
    }

仔细想了想了想,是不是这个地方出问题了呢

改成这样

protected void Page_Load(object sender, EventArgs e)
       
    {
        if (!Page.IsPostBack)//如果第一次打开就绑定,其他不执行
        {
            this.gridshow();
        }
    }

这下这个值就是新的了,果然是这里出问题了,

这样就会发现 虽然先触发 DataGrid1_UpdateCommand,但是客户端只是HTML ,还必须从服务器重新处理,

但每次我又重新绑定了,所以就会出现这样的问题.

转载于:https://www.cnblogs.com/gergro/archive/2006/04/03/365675.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值