我想用线程更新从dataGridView到数据库的更改。
以下是代码:
public void Updatewiththread()
{
DataTable changes = ((DataTable)dataGridView1.DataSource).GetChanges();
if (changes != null)
{
MySqlCommandBuilder mcb = new MySqlCommandBuilder(mySqlDataAdapter1);
((DataTable)dataGridView1.DataSource).AcceptChanges();
mySqlDataAdapter1.UpdateCommand = mcb.GetUpdateCommand();
mySqlDataAdapter1.Update(changes);
}
}
private void dataGridView1_RowValidated(object sender, DataGridViewCellEventArgs e)
{
DataTable changes = ((DataTable)dataGridView1.DataSource).GetChanges();
if (changes != null)
{
UpdateThread = new Thread(Updatewiththread);
UpdateThread.Start();
}
}
问题是,当我改变1值工作时,但当我改变另一个时它不工作。当我对随机列进行排序时,它再次工作。在多次更改中,某些时候可以使用1个单元格的更改。