父窗口中有一个datagridview和一个button按钮,绑定了数据库中的users表(是在程序中绑定的), 表中有userName,userPwd字段,
现在点击button按钮,弹出一个用于增加user的对话框,但是增加完毕后,父窗口中的datagridview并没有更新.
问高手如何更新数据呢,
我的思路:我在父窗口的类中有一个函数loaddata(),但是我在子窗口中缺无法调用,把loaddata()写成public的也出现不了.
请牛人试一下小刀,谢谢了

解决方案 »

  1.   

    button事件中:
    form2 frm=new form2();
    if(frm.showdialog()=DialogResult.Yes)
    {
     //刷新datagridview
    }form2中关闭窗口事件加上这句:
    this.DialogResult = DialogResult.OK;
      

  2.   

    确认type="submit"且在服务器上运行。添加服务器代码调用LoadData方法。
      

  3.   

    看错了,以为是GridView呢。你如果是绑定的数据,那么最好在关闭子窗体后重新进行绑定以刷新数据。
      

  4.   

    嘿嘿,上午解决的问题,和你的类似
    我用的是委托给你参考一下
    在子窗体中定义委托Public Delegate Sub returnvalue(ByVal strName As String)
    Public strFileNm As returnvalue
    增加完后在确定button中写Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click        strFileNm(TextBox1.Text.ToString())        Me.Close()End Sub在父窗体的button中写Private Sub tsmOpen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tsmOpen.ClickDim temp As Form(子) = New Form(子)temp.strFileNm = New temp(工程名).Form(子).returnvalue(AddressOf showvalue)temp.Show()
    End SubPrivate Sub showvalue(ByVal strName As String)
    txt1.Text = strName.ToString()
    End Sub
      

  5.   

    用代理委托
    子窗体
     public delegate void CallBackUpdateDatasource();
     public CallBackUpdateDatasource OnCallBackUpdateDatasource;父窗体
      ChildForm.OnCallBackUpdateDatasource = new ChildForm.CallBackUpdateDatasource(this.loaddata);  void loaddata()
      {
       //update datasource;
      }