当我尝试更新gridview时。更改不会显示。但是当我重新打开表格时,它已经改变了。如何确保它会立即更新(并显示)。当我说:
scb = new SqlCommandBuilder(da);
da.Fill(dt);
userInformation.DataSource = dt;
显然会填满桌子。但比我有两次信息。
这是我目前的代码:
DataTable dt;
SqlDataAdapter da;
SqlCommand cmd;
SqlCommandBuilder scb;
//this is inside the constructor
cmd = new SqlCommand("loadUserTable", conn);
cmd.Parameters.AddWithValue("@username", this.username);
cmd.CommandType = CommandType.StoredProcedure;
da = new SqlDataAdapter(cmd);
da.SelectCommand = cmd;
dt = new DataTable();
da.Fill(dt);
userInformation.DataSource = dt;
//this is a button (called save)
scb = new SqlCommandBuilder(da);
da.Update(dt);
userInformation.DataSource = dt;
此外,我尝试刷新,但也没有做到这一点。
答案 0 :(得分:2)
每次Fill
实例DataTable
之前,您需要在Clear()
上调用DataTable
方法。如果没有,则Fill
方法会不断添加DataTable
。