2017-02-24 43 views
0

我有幾個綁定到數據源的Datagridviews。這些數據來自數據庫,需要不斷更新。 (我每秒刷新一次Datagridview) 這種不斷的刷新會導致滾動,選擇等一些明顯的問題。數據不會如此頻繁地更改,每分鐘只有大約兩次,但是當它發生更改時,我需要快速更新Datagrid,從而頻繁刷新。只有在內容發生變化時才刷新datagridview

有沒有一種方法來快速驗證(例如通過使用散列函數等)來查看數據源的內容是否已經改變?我想避免比較每個單元格/行,因爲它可能對我的所有datagridview的軟件來說工作太多。有沒有更好的辦法?

謝謝

回答

1
DataSet dsBindedToDataGridView = new DataSet(); // Get data from DB & Bind this to DataGridView and persist it. 
DataSet dsRetrivedOnRefresh = new DataSet(); //Add code to fetch data from DB 

var result = dsBindedToDataGridView.Tables[0].AsEnumerable().Except(dsRetrivedOnRefresh.Tables[0].AsEnumerable(),DataRowComparer.Default); 
//Now if result has got any value then data has changed and you need to refresh the data else ignore 
+0

似乎並沒有工作..我使用兩個DataTable,而不是數據集,但這樣做。綁定的數據表是空的,刷新時只有一行。 result.any返回false。 – sharkyenergy

+0

您是否在與DataGridView綁定後沒有持久保存數據表? – Brijesh

+0

這是什麼意思? – sharkyenergy

相關問題