2012-07-10 69 views
0

我有一個綁定到Acces數據庫的DataGridView。我可以更新數據庫好,如果我在DataGridView進行編輯直接,但如果我使用類似:DataGridView綁定到Acces數據庫問題

dgView.Rows[0].Cells[1].Value = "Some text"; 

它將在0行寫在第一個單元格中的文本,但是,當我打電話:

dAdapter.Update(dTable); 

它不會更新數據庫。相反,舊的價值被保留。如果我自己編輯了代碼,並通過雙擊單元格並鍵入內容來編寫「某些文本」,它會更新正常。我知道這是一個問題,但實際上我不知道它是什麼。

請幫忙,我真的需要做這件事情(這是一個學校項目)。請問我需要進一步的問題來幫助我。提前致謝。

瓦利

回答

0

這裏的問題是,當你更新你的DataGridView編程你這樣做的方式,在DataGridView的底層數據源(您的數據表)不被告知它已經改變 - 所以只是UI更改,而不是您的數據源。

可以使用DataGridView.BeginEdit方法來激發這些事件,像這樣:

dgView.BeginEdit(false); 
dgView.Rows[0].Cells[1].Value = "Some text"; 
dgView.EndEdit(); 

,而不是試圖通過編程,你是在DataGridView更新您的數據表,一個更好的辦法是,直接更新您的DataTable。