我有一个 datagridview,它设置为 EditMode :EditOnKeylines。当我编辑网格中的数据并单击更新按钮时,更改不会反射(reflect)在作为该网格的数据源的数据库表中。下面给出了加载 dataGridView 并更新它的代码。
private void Form_Load(object sender, EventArgs e)
{
// TODO: This line of code loads data into the 'pFSDataSet5.Farms' table. You can move, or remove it, as needed.
this.farmsTableAdapter.Fill(this.pFSDataSet5.Farms);
}
private void update_Click(object sender, EventArgs e)
{
//da.Update((DataTable)farmsTableAdapter);
int s=this.farmsTableAdapter.Update(this.pFSDataSet5.Farms);
Console.Write(s);
MessageBox.Show("Successfully Updated");
}
我错过了什么,数据更改不会传播到名为“Farms”的数据库表?
最佳答案
这些更改不会反射(reflect)在您的数据库中,因为您没有关闭编辑 datagridview 。使用这两行来关闭 datagridview 编辑:
yourdatagridview.EndEdit();
((DataRowView)yourdatagridview.CurrentRow.DataBoundItem).EndEdit();
然后就可以使用tableadapter更新了。 :)
关于c# - DatagridView 更改未反射(reflect)在数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14229972/