DataGridView編輯狀態自動提交

 

 
在使用bindingSource、bindingNavigator+DataGridView修改時會發現,
當你需要保存修改過後的內容,必須將光標指向另外一行,
DataGridView纔會將編輯過後的數據提交到數據緩存區,
那麼,就會讓客戶感覺起來很不方便(無法直接點保存更新)
這兩天上網查了幾個方法,可行,下面列舉一下:

一、最常見的解決辦法。
使用select(),或者修改當前單元格索引使光標跳到另外一行。
這種方式有其弊端,那就是當你只有一行數據時,這方法就行不通。
只能在你點保存之前,新增一行空數據,然後將光標移向空數據,保存之後再將這行空數據刪除。
這種方式實現起來比較麻煩,不利於快速開發。

二、使用EndEdit()方法
這種方法其實仔細看看和上面的方法其實同出一轍,
唯一不同的是,這是系統自帶的方式,當然就不會出現上面出現的問題。
不過這裏要注意一下,只有在保存之前bindingSource和DataGridView都使用了EndEdit()方法表格內數據才能成功提交。(只用一個是沒有效果的。)

三、在網上看到的比較搞笑的方法
SendKeys.Send( "{ENTER} ")
模擬人工輸入“回車”
當時看到覺得挺搞笑,不過這也不失爲一種良方。
發佈了18 篇原創文章 · 獲贊 2 · 訪問量 16萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章