你新增记录保存的动作中,应该对DATAGRID2的DataSource重置,就可以了

解决方案 »

  1.   

    老大,你并没有新增相应的子记录。
    你的TABLE1 中增加了一条新记录,新增完成后,TABLE1 中出现一条新记录,同时将焦点移动到该新增记录。因为你建立了关系,TABLE2 会自动试图去显示TABLE1 中焦点行的子记录。但是你没有对子表新增。好象可以通过对关系进行设置,达到你的目的,试试建立级联更新。如果不行,直接写子表的新增代码也不麻烦。另外,上面这种新增记录的方式非常的不合理。因为DataTable是没有类型判断的。如果想要保证数据类型与数据库一致,就得另写代码。
      

  2.   

    不单是DataSource,甚至连RELATION都重置了,没有用。
      

  3.   

    to:rainman113d(雨)
    有新增子记录
      

  4.   

    我一般都是AddNew之后CancelCurrentEdit,和移动差不多。。
    也想知道有没有其他方法。.
      

  5.   

    参考HOW TO: Update Parent-Child Data with an Identity Column from a Windows Forms Application by Using a Web Service in Visual C# .NET
    http://support.microsoft.com/default.aspx?scid=kb;%5BLN%5D;320301&product=vcSnet
      

  6.   

    是不是没有ACCEPTCHANGES啊?我以前也试过是这样加上就OK了。
      

  7.   

    3q ReinhardCao(ReinhardCao) 就是这个原因。