我有一個從數據庫填充的DataGridView。 我有一個按鈕來保存從DGV到數據庫的更改,這工作正常。 但是現在我希望數據庫能夠在DGV中更改某些內容時自動更新。從DataGridView事件更新數據庫無法正常工作
我嘗試了幾個事件CellEndEdit,CellLeave,CellValidated,CellValueChanged和SelectionChanged。 如果我編輯了單元格內容並按回車或點擊/選擇了一個單元格上方或下方的單元格,這些更改已保存到數據庫中,但如果我在同一行中單擊或單擊/選擇了單元格旁邊的某個單元格,更改未保存。上述事件都沒有幫助我解決這個問題。
//編輯
一些示例代碼:
我填補我DGV這樣
query_em = "select * from Table;";
try
{
dt_em = new DataTable();
da_em = new OleDbDataAdapter(query_em, connString);
cb_em = new OleDbCommandBuilder(da_em);
bs_em = new BindingSource();
da_em.Fill(dt_em);
bs_em.DataSource = dt_em;
dgv_em.DataSource = bs_em;
dgv_em.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
throw;
}
通常我用一個按鈕
private void bt_save_em_Click(object sender, EventArgs e)
{
try
{
da_em.Update(dt_em);
MessageBox.Show("Database updated.");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
throw;
}
}
更新他們,但我想有這樣的工作正常,但它沒有。上面描述了確切的問題。
private void dgv_em_SelectionChanged(object sender, EventArgs e)
{
da_em.Update(dt_em);
}
請我們看一些示例代碼,以便我們可以幫助 – Star
添加一些代碼,我沒有看到這是如何幫助,但繼續;) 我需要另一個事件則上述。代碼是好的,到目前爲止,我認爲 – daydr3amer