DataGrid和TextBox都绑定了同一DataSet中的表,运行时如果修改了TextBox中的字段,DataGrid中的同一字段内容不同步更新,一定要焦点进入DataGrid以后才行,不知道在TextBox的TextChanged事件里如何写能让DataGrid中的内容随TextBox的内容同步变化?

解决方案 »

  1.   

    DataGrid重新綁定一次數據源就可以.
      

  2.   

    反过来呢?DataGrid更新的时候也重新绑定TextBox控件?控件比较多的时候呢?每个控件的事件中都重绑定其他控件一次啊?
    有没有简单的设置啊?如调用哪个对象的Refresh之类的方法?
      

  3.   

    发现DataGrid控件的内容修改后,只要焦点一移动到任何其他控件,对应字段的控件就能自己更新,而TextBox控件绑定更新后,焦点移到非DataGrid的其他控件时,DataGrid控件的内容就不会更新.
      

  4.   

    在TextBox的TextChanged中任意操作一下dataGrid 例:
    dataGrid1.Select (dataGrid1.CurrentRowIndex );窗口上的焦点不会变,也实现了同步
      

  5.   

    自己找了种方法:
    ((DataRowView)(this.BindingContext[ds, TableName].Current))[1] = editName.Text;
    对这些类还不是很熟悉,刚接触C#
      

  6.   

    呵呵,发现自己的愚蠢.
    在Change事件这么做会在记录导航时被激发产生莫名其妙的错误,如DataGrid到达新行时的行为.还是该放在焦点移出的时候.