我正在使用以下代碼更新我的數據網格中的數據。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