各位大侠,小弟现在做一个WinForm应用程序,我的主窗体中有个datagrid,里面显示的我数据库里一张表的内容,现在有个子窗体用来给主窗体的datagrid添加数据,请问当点击子窗体上的"确定输入"按纽时,子窗体消失,可怎样能让刚输入的新数据在主窗体的datagrid显示出来啊,望各位大狭不吝赐教!!

解决方案 »

  1.   

    窗体之间的传值问题...(1) 你可以在父窗体里,设置公共变量,并把父窗体的引用通过子窗体的构造函数传给子窗体.子窗体在点击确定按钮时给父窗体的公共变量赋值.(2) 子窗体在调用Close()方法时,其内部的成员仍然是可以访问的.
        Form2 form2 = new form2(); //子窗体
        form2.ShowDialog();
        this.A = form2.A;          //这里是发生在form2.Close()之后的.
        ...
      

  2.   

    1.
    dim newform as new form2()
    if newform.showdialog = dialogresult.ok then 
       dim s as string = newform.textbox1.text
    end if
    2.可以传递一个参数过去,然后通过参数来控制,如果是MDI程序,可以考虑使用parentform属性
      

  3.   

    设frmMain为DataGrid显示数据的窗体,frmNewRec为添加记录的窗体。
    在frmMain一个按钮的事件中
    frmNewRec frm = new frmNewRec();
    if (DialogResult.OK == frm.ShowDialog())
    {
      DataRow dr = dataTable.NewRow;
      dr[...] = frm.txtName.Text;
      .....
      dataTable.Rows.Add(dr);
    }