【问题标题】:VB.net BindingNavigator refresh current recordsVB.net BindingNavigator 刷新当前记录
【发布时间】:2013-09-20 23:26:07
【问题描述】:

我正在尝试让绑定导航器“刷新”并在更新记录后向我显示新数据。

我有一个包含 4 个字段(ID、Notes、SN、Cause)和一个 BindingNavigator1 的 Winform。

  • 我将导航器设置为 bindingsource。
  • 打开一个连接。
  • 设置我的 tableadapter。
  • 设置我的数据集。
  • 添加我的表。
  • 填满我的表格适配器。
  • 将 bindingsource.datasource 设置为 ds.table(x)
  • 向文本/组合框添加数据绑定
  • 关闭连接

这一切都很好。我从我的数据库中提取数据。我可以使用导航器很好地滚动浏览记录。

现在,当我使用“原因”组合框更新我的一条记录时,它可以通过 UPDATE 语句影响其他记录。这工作正常,它运行 UPDATE 命令并在数据库中为所有应该更新的记录正确设置字段,但是当我使用 BindingNavigator 滚动记录时,新数据不会在其他记录中表示。在目前的记录中很好。

我尝试了各种刷新绑定导航器等的组合。这是我尝试过的一些事情,但没有运气。

  • BindingNavigator1.Refresh()
  • BindingSource1.ResetBindings(True)
  • Me.UpdateDataSources()
  • BindingSource1.ResetBindings(False)
  • Me.BindingNavigator1.BindingSource = Me.BindingSource1
  • Me.BindingNavigator1.Refresh() '不行

有什么想法吗?

【问题讨论】:

    标签: vb.net dataset bindingnavigator


    【解决方案1】:

    我相信您需要做的只是重新设置bindingsource的数据源。更新后从数据库中重新读取数据,并将这些结果设置为datasource

    var dbData = GetMyDbData();
    BindingSource1.DataSource = dbData;
    
    然后,在使用bindingnavigator时导航记录时,您应该在更新的记录和结果上更新的任何其他记录中查看所有更改。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-13
      • 1970-01-01
      • 1970-01-01
      • 2015-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多