2013-08-27 76 views
0

我有一個DataGridViewContextMenuContextMenu插入行,插入列,刪除行刪除列MenuItem s。用戶可以在ContextMenuMenuItem的點擊事件中添加/刪除行/列。在按鈕單擊事件中獲取DataGridView修改的內容

最初,DataGridView中顯示的數據是從數據庫中的表中檢索的。 一旦用戶完成編輯DataGridView的內容,即添加/刪除行/列,他/她點擊保存Button

現在在Button點擊事件中,我必須將所有新增/修改的數據更新回數據庫。怎麼樣?

+1

你的'DataSource'怎麼樣?它應該是一個'DataTable',一個'BindingSource'或一個'DataView'。你只能處理'DataSource'而不用觸及你的'DataGridView'。 –

+0

我沒有'DataSource'。使用'DataSource'對我來說不兼容。我從數據庫中取回數據後,通過循環「DataTable」來添加單元格內容。 – Abhishek

回答

0

在您的數據表上使用GetChanges()。 如果數據表中有任何更改,它將返回Datatable。 更新返回的數據庫到數據庫throuhgh適配器

0

您應該維護DataSet以及您的datagridview。

  1. 更新的數據集,只要在DataGridView中
  2. 單元格值更改添加新的行數據集時,將行添加到DataGridView的
  3. 最後,你可以使用DataAdapter的更新方法,以反映所有更改回數據庫
+0

我在上面的評論中已經提到我沒有使用'DataSource'。你如何建議我維護'DataSet'連同'DataGridView'? – Abhishek

+0

我有'DataGridView'中的幾個字段,其值基於其他字段計算。所有顯示的數據都不是來自數據庫。 – Abhishek