在使用bindingSource、bindingNavigator+DataGridView修改時會發現, 當你需要保存修改過後的內容,必須將光標指向另外一行, DataGridView纔會將編輯過後的數據提交到數據緩存區, 那麼,就會讓客戶感覺起來很不方便(無法直接點保存更新) 這兩天上網查了幾個方法,可行,下面列舉一下: 一、最常見的解決辦法。 使用select(),或者修改當前單元格索引使光標跳到另外一行。 這種方式有其弊端,那就是當你只有一行數據時,這方法就行不通。 只能在你點保存之前,新增一行空數據,然後將光標移向空數據,保存之後再將這行空數據刪除。 這種方式實現起來比較麻煩,不利於快速開發。 二、使用EndEdit()方法 這種方法其實仔細看看和上面的方法其實同出一轍, 唯一不同的是,這是系統自帶的方式,當然就不會出現上面出現的問題。 不過這裏要注意一下,只有在保存之前bindingSource和DataGridView都使用了EndEdit()方法表格內數據才能成功提交。(只用一個是沒有效果的。) 三、在網上看到的比較搞笑的方法 SendKeys.Send( "{ENTER} ") 模擬人工輸入“回車” 當時看到覺得挺搞笑,不過這也不失爲一種良方。 |
DataGridView編輯狀態自動提交
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.