2014-02-12 114 views
0

在WinForms應用程序中使用來自使用數據源配置嚮導創建並連接到Access數據庫的數據源的數據集。如何在運行時刷新數據集以反映外部發生的數據庫更改(僅數據更改,無結構更改),而不關閉並重新打開我的應用程序?如何刷新數據集以反映數據庫的外部更改?

非常感謝您的幫助。

回答

1

在嚮導應該創建的tableadapter上調用.fill命令。

默認情況下,代碼放置在您添加tableadapter和dataset的表單的加載事件中,因此可以複製粘貼或創建新的子表單並調用該表單。

編輯:

有一個在窗體設計器的TableadapterManager下上市,如果你通過設計師添加任何的TableAdapter的clearBeforeFill屬性,如果沒有,那麼你就必須將其設置在後面的代碼。

在代碼背後有幾個事件可能發生在你的綁定源上,我建議在currentItemChanged事件中放置所需的代碼以便實時提交更改。

+0

非常感謝你布蘭登!我曾嘗試使用.Fill命令,但由於表單有幾個tableadapter,它們在表單加載時用父子記錄填充,所以當我嘗試填充時,出現ForeignKey違例錯誤。在填充父表適配器之前,我必須清除子表填充的填充,但我找不到這樣做的方法。我正在使用Dataset.Merge來完成這項工作,但它並不反映已刪除的記錄。 – user3299780

+0

如果您是通過設計器添加的,則表單設計器中的TableadapterManager下方會列出任何tableadapter的clearBeforeFill屬性,如果不是,那麼您必須將其設置在您的代碼中。 在後面的代碼中有幾個事件可能發生在你的綁定源上,我建議在currentItemChanged事件上放置所需的代碼以便實時提交更改。 –

相關問題