我有一个datagridview
,我使用数据库连接以编程方式填充数据。
像这样:
myDataAdapter.Fill(myDataTable)
myDataGridView.DataSource = myDataAdapter
我设置了一个可以编辑的列。这是一个库存datagridview
,只需单击一列并输入即可重新进货。我的问题是:
如何根据我的数据网格以编程方式更新数据库中已编辑列的每一行?
答案 0 :(得分:1)
您可以检查datagridview的单元格编辑事件,如下所示
private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
//
Need to add your code here.
}
答案 1 :(得分:1)
您可以使用CellEndEdit执行此操作 您的查询可以是这样的:
query1 = "UPDATE urdatabaseTable SET urdatabaseColumn='" +
dGV.CurrentCell.Value + "' WHERE id=" + dGV.CurrentRow.Cells[0].Value;
要小心WHERE CLAUSE,您应该使用记录的常量值,例如ID或指定记录的其他内容。
答案 2 :(得分:1)
从DataAdapter更新的一般语法如下所示;
myDataAdapter.UpdateCommand = myUpdateCommand;
myDataAdapter.Update(myDataTable);
由于调用上述方法会更新您的基础数据源,考虑所有您的数据表更改,您必须确定应调用上述代码从网格更新数据源的事件。如果要在更新单元格列时更新数据源,可以使用CellEndEdit
。否则,您可以使用form_close
事件在完成所有更改并关闭表单时进行更新。