如题

解决方案 »

  1.   

    消息通信
    或者
    在这个form中加一个刷新方法,然后在另一个窗口中调用
      

  2.   

    我也遇到过这样的问题.我是这样实现的.
    winform1定义一个public static DataTable dt = new DataTable()然后更新了数据库后然后把结果回传到dt中...
    winform2中可以用winform1中的dt...当winform1中的dt改变时winform2中就自然后改变了...
    还有一个方法不知道可不可行.就是你在两个form中定义两个公共方法相互调用....看一下行不行...
      

  3.   

    在Form1种对Form2的实例进行引用,
    Form1中更新数据后刷新Form2中的数据就是了。
    如果不嫌麻烦,将form1中更新后的数据集传给form2,
    就不用从数据库刷了。
      

  4.   

    父窗体Form1
    public void BindDg()
    {
       ……
    }
    子窗体Form2
    Form1 frm;
    private void button2_Click(object sender, System.EventArgs e)
    {
    frm.BindDg();
    }
      

  5.   

    如果使用模式窗体,返回DataTable
    否则弄个事件
      

  6.   

    我的问题是:这两个form根本没有父子关系
      

  7.   

    Form1:public void BindDg()
    {
       ……
    }
    private void ShowForm2()
    {
    Form2 mm = new Form2();
    mm.frm = (Form1)this.Parent;
    mm.ShowDialog();
    }
    Form2:Form1 frm;
    private void button2_Click(object sender, System.EventArgs e)
    {
             //UPDATE DB
    frm.BindDg();
    }
      

  8.   

    楼上的好象没有看清楚我的意图.两个form除了同属于一个应用程序外没有其他的关系的.我以前把一个form的实例当参数传递给另一个form,但我总觉得这样很混乱.还有没有好的方法?
      

  9.   

    就是页面之间的传值,参看:
    http://blog.csdn.net/tjvictor/archive/2006/06/23/824617.aspx
      

  10.   

    参考,
    http://blog.csdn.net/zhzuo/archive/2004/04/05/22027.aspx