【发布时间】:2017-10-31 01:02:55
【问题描述】:
我有一个从数据集填充的DataGridView。
如何更改DataGridView 中的任何单元格,并同时更改数据集(和数据库)。
是否有我可以学习的示例程序(C# 中)?
【问题讨论】:
-
你试过用谷歌搜索数据绑定和 DataGridView 教程吗?
我有一个从数据集填充的DataGridView。
如何更改DataGridView 中的任何单元格,并同时更改数据集(和数据库)。
是否有我可以学习的示例程序(C# 中)?
【问题讨论】:
Here is an article 带有清晰的解释、屏幕截图和演示如何使用 DataGridView 的代码。数据绑定部分应该特别有趣。
【讨论】:
DataRowView drv = dataGridView1.CurrentRow.DataBoundItem as DataRowView;
DataRow[] rowsToUpdate = new DataRow[] { drv.Row };
SqlDataAdapter adapter = new SqlDataAdapter("SELECT * FROM Categories", con);
SqlCommandBuilder builder = new SqlCommandBuilder(adapter);
adapter.Update(rowsToUpdate);
【讨论】:
如果您希望程序更改 DataGridView 的内容,只需更改底层 Dataset。 DataSet 也具有将这些更改提交到数据库的方法。
【讨论】:
DataRowView drv = dataGridView1.CurrentRow.DataBoundItem as DataRowView;
DataRow[] rowsToUpdate = new DataRow[] { drv.Row };
SqlDataAdapter adapter = new SqlDataAdapter("SELECT * FROM Categories", con);
SqlCommandBuilder builder = new SqlCommandBuilder(adapter);
adapter.Update(rowsToUpdate);
【讨论】:
我有一个连接到访问数据库的应用程序。在这个应用程序中,我做了这样的事情:
try
{
con.Open();
foreach (DataGridViewRow item in this.dataGridView1.SelectedRows)
{
OleDbCommand cmd = new OleDbCommand(cmdTxt, con);
cmd.Parameters.AddWithValue("kurs", c2);
cmd.Parameters.AddWithValue("ID", item.Cells[0].Value);
cmd.ExecuteNonQuery();
}
}
catch (Exception exception)
{
MessageBox.Show(exception.Message);
}
finally
{
con.Close();
}
如果您的数据库在 sql server 中,那么您可以使用 SQlDbCommand 类。
【讨论】: