我正在使用以下代码更新我的数据网格中的数据。DataGrid值在编辑/更新功能后不会更新
但是,当我点击更新数据库中的值更新,但它仍然显示数据网格中的旧值。
如果在此之后刷新页面,则datagrid会显示更新的值。
什么可能是错的?
代码在更新命令:
protected void MySQLDataGrid2_UpdateCommand(object source, DataGridCommandEventArgs e)
{
string newData;
TextBox aTextBox;
aTextBox = (TextBox)(e.Item.Cells[0].Controls[0]);
newData = aTextBox.Text;
decimal comm = Convert.ToDecimal(newData);
string UpdateHiveCommission = "Update tbl_HiveCommission set Commission = '" + Convert.ToDecimal(newData) + "'";
MySqlConnection objMyCon3 = new MySqlConnection(strProvider);
objMyCon3.Open();
MySqlCommand cmd3 = new MySqlCommand(UpdateHiveCommission, objMyCon3);
cmd3.ExecuteNonQuery();
objMyCon3.Close();
MySQLDataGrid2.EditItemIndex = -1;
MySQLDataGrid2.DataBind();
}
如何手动更改已编辑行的数据?你能举一个小例子说明如何做到这一点吗? – 2011-03-24 09:00:03
只是不要调用数据绑定 - 这会导致您当前输入的数据被替换为数据源中的数据。 – Gambrinus 2011-03-24 09:02:01
你可以 - 在数据绑定刚刚写入aTextBox.Text = newData; – Gambrinus 2011-03-24 09:03:33