【问题标题】:Two datagridviews in one windows form = not possible to save data to the second datagridview一个窗体中的两个 datagridviews = 无法将数据保存到第二个 datagridview
【发布时间】:2010-10-27 09:00:19
【问题描述】:
  1. 我创建了一个 winform
  2. 我正在通过从数据源中拖动表格来添加 datagridview
  3. 结果:我有一个带有 datagridview 和 bindingnavigator 的 winform
  4. 我正在通过从数据源中拖动另一个表将第二个 datagridview 添加到同一个 winform
  5. 结果:与第 3 条相同,但现在有两个数据网格视图; 虽然没有添加第二个绑定导航器,但不要问我为什么!
  6. 我复制现有的 bindingnavigator 并将副本调整为第二个 datagridview
  7. 我查看了 .Designer.cs 文件,它在一致性方面看起来很完美
  8. 现在问题来了 - 即使两个 datagridview 都有自己的 BindingNavigatorSaveItem_Click 方法,并且代码指出了它们各自的绑定源... 无法保存来自第二个 datagridview 的更改到数据库!

    Anyone seen this? Any suggestions what to do?
    

【问题讨论】:

    标签: c# winforms visual-studio-2008 sql-server-2005 datagridview


    【解决方案1】:

    我是这样解决的(感谢 mr/mrs/miss dretzlaff17,他在我的大脑中启动了一些过程)

      private void tableMeLikeBindingNavigatorSaveItem_Click(object sender, EventArgs e)
      {
         try
         {
            this.Validate();
            this.tableMeLikeBindingSource.EndEdit();
    
            // IMPORTANT: the following predefined generic Update command
            // does NOT work (sometimes)
            // this.tableAdapterManager.UpdateAll(this.rESOURCE_DB_1DataSet);
    
            // instead we explicitely points out the right table adapter and updates
            // only the table of interest...
            this.tableMeLikeTableAdapter.Update(this.rESOURCE_DB_1DataSet.TableMeLike);
         }
    
         catch (Exception ex)
         {
            myExceptionHandler.HandleExceptions(ex);
         }
      }
    

    【讨论】:

      【解决方案2】:

      我建议通过使用 DataTable 或对象集合而不是使用 bindingnavigator 在代码中设置 DataGridView 的 DataSource 属性。

      【讨论】:

      • 谢谢,你让我想到了正确的方向。不过,我仍然使用自动化的东西。解决方案(对我而言)是将 UpdateAll 更改为 Update。问题是,UpdateAll 应该这样做,并且在 Save-event-handler 中是“预定义的”......但是盖茨先生的一些很好隐藏的错误使它有点不一致,特别是在我的问题中所述的场景中。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-12-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-26
      • 1970-01-01
      相关资源
      最近更新 更多