怎么子窗体中直接刷新父窗体的DataGrid控件里面的数据,这个问题问了很多次了,但是没有好的答案。

解决方案 »

  1.   

    假如有DataSet  localdatalocaldata.Tables[0].Rows[rownumber].beginedit();
    localdata.Tables[0].Rows[rownumber].Editedit();可以把对 localdata中 tables 内容的改变刷新出来
      

  2.   

    public void Refresh()
    {
    DataSet ds  =dataGrid1.DataSource;
    dataGrid1.DataSource = null;
    dataGrid1.DataSource = ds;
    dataGrid1.DataMember = ds.Tables[0].TableName;
    }(MyMDIParent)Parent.Refresh();
      

  3.   

    this.Parent.yourDataGrid; 这样你就可以在子窗体里面访问这个DataGrid了,你想干什么都成
      

  4.   

    主窗体中:
    Form2.ShowDialog();
    datarid.datasource =this.Re();     //重新取一次数据返回为dataset
      

  5.   

    Datagrid 在 form1中
    form2 刷新form1的Datagirdform1 theowner = (form1).this.owner
    theowner.datagrid.SetDataBinding (dataset,"TableName");
      

  6.   

    补充:
      form1的datagrids属性为public
      form2要为form1的showdialog(this)
      

  7.   

    可以做一个对Form2中新增完毕后的监视,如果新增成功,Form1刷新,否则不刷新.
    在Form1中时刻判断Form2中的这个监视参数.