我正在尝试更新 SQL 表中的单个记录。因此,我DataGridView
查看了该表,当在表中选择了某行并单击更新按钮时,Form
将打开新的更新。
主窗体将DataRow
row 参数传递给 new Form
,当更新结束时,将 row 返回到主窗体。主窗体中的代码示例大约是这样的:
private void btnUpdateUser_Click(object sender, EventArgs e)
{
//Some code to extract DataRow
FormUpdateUsers updateUser = new FormUpdateUsers(row, new Action<DataRow>(onUserUpdated));
updateUser.Show();
}
当 Update Form 完成更新时,它会调用 action 并将 row 返回到 Main Form,如下所示。
public partial class FormUpdateUsers : Form
{
private DataRow row;
private Action<DataRow> action;
public FormUpdateUsers(DataRow row, Action<DataRow> action)
{
InitializeComponent();
this.row = row;
this.action = action;
}
private void btnConfirm_Click(object sender, EventArgs e)
{
//Some code for updatin a database
action.Invoke(row);
}
}
问题是,如何插入返回的行晒DataGridView
并替换过时的行?有什么建议么?
private void onUserUpdated(DataRow row)
{
// Update DataGridView?
}