2013-09-16 44 views
1

我試圖讓我的bindingnavigator「刷新」並在更新記錄後顯示新數據。我有一個Winform,有4個字段(ID,Notes,SN,Cause)和一個BindingNavigator1。VB.net BindingNavigator刷新當前記錄

  • 我將導航器設置爲bindingsource。
  • 打開連接。
  • 設置我的表適配器。
  • 設置我的數據集。
  • 添加我的表格。
  • 填寫我的表適配器。
  • 設置bindingsource.datasource到ds.table(X)
  • 添加數據綁定到文本/組合框
  • 緊密結合

這一切工作正常。我從我的數據庫中提取數據。我可以使用導航器精確滾動記錄。

現在,當我用原因組合框更新我的一條記錄時,它可以通過UPDATE語句影響其他記錄。這工作正常,它運行UPDATE命令,並在數據庫中爲所有應更新的記錄正確設置字段,但由於使用BindingNavigator滾動記錄,新數據未在其他記錄中表示。目前的記錄沒什麼問題。

我嘗試了各種刷新bindingnavigator等的組合,這裏有一些我已經嘗試過沒有運氣的事情。

  • BindingNavigator1.Refresh()
  • BindingSource1.ResetBindings(真)
  • Me.UpdateDataSources()
  • BindingSource1.ResetBindings(假)
  • Me.BindingNavigator1.BindingSource = Me.BindingSource1
  • Me.BindingNavigator1.Refresh()'no go

任何想法?

回答

0

我相信你需要做的只是重新設置你的bindingsource的數據源。更新後重新讀取數據庫中的數據,並將這些結果設置爲datasource

var dbData = GetMyDbData(); 
BindingSource1.DataSource = dbData; 

然後,當您使用bindingnavigator瀏覽記錄,你應該看到更新的記錄和更新結果的所有更改任何其他記錄。