在csdn上搜索一下两个窗体间如何变量通信,会得到你的方法的。

解决方案 »

  1.   

    未处理的“System.InvalidCastException”类型的异常出现在 ×××××.exe 中。
    其他信息: 指定的转换无效。我用的方式是:
    ((GoldList)this.Owner).NewInformation();
    NewInformation()是Form2中一个Public方法,
    我另外的地方想用这样的方式给Form2的一个公用属性赋值,我想肯定也不行
      

  2.   

    但是这种方法对于MDI父窗体很有效,不知道怎么回事。
      

  3.   

    就是这个呀
    ((GoldList)this.Owner).NewInformation();打开Form3时用的是
    Form3 fm3 = new Form3();
    fm3.pu.ShowDialog(this);Form3中有一个
    public viod NewInformation()
    {
        ……
    }
      

  4.   

    用fm3.Hide()方法关闭fm3。并结合以下代码(Form2中)。Form3 fm3 = new Form3();
    fm3.pu.ShowDialog(this);Form2.txtCompany.Text = fm3.txtReturn.Text;fm3.Close();
      

  5.   

    1/把Form2中的textbox的modifies设置为public
    2/在Form3中建个FORM2类型的变量a,在构造函数中为它赋值
    修改Form1的构造函数:
    FROM2 a;
    public Form1(FROM2 aa)
    {
        a=aa;
    }
    3/(new Form3(this)).ShowDialog(this);//显示form34/a.txtCompany.Text="你选取的值"//在form3中设置FORM2中的值
      

  6.   

    To xieshy(金刚树)
    你的代码我还没有测试,晚上回家才能测,先谢谢了
    To  LiSDN(Lockon)
    非常感谢你三次过来帮我,我真正想得到的是您的第四步,我做的没有成功,如上所说,提示了一个那样的错误,注意一点Form2是一个MDI子窗口.
    再次感谢.我现在没有测试环境,晚上再请教