本人今天作了个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 ,还必须从服务器重新处理,
但每次我又重新绑定了,所以就会出现这样的问题.