我做了连个窗体。Form1和Form2,在Form1中有三个textBox,一个Button。在Form2中有三个label,我想实现的功能是在Form1中摁Button,然后连接到Form2(已经实现),三个texiBox中的值经过相应的计算显示在Form2中的三个label上,请各位赐教,不胜感激!

解决方案 »

  1.   

    一是通过委托
    或者全局的函数,变量。(public);
      

  2.   

    将FORM1 作为参数传递给FORM2 .
    这样在构造FORM2的时候通过FORM1的属性获取TXT的值。然后赋值给LBL
      

  3.   

    这种问题CSDN每天都有几个,就不会先查查,唉
      

  4.   

    窗体也是类,public , private,自己想想,就实现了
      

  5.   

    [Quote=引用 3 楼 gac520 的回复:]
    将FORM1 作为参数传递给FORM2 .
    这样在构造FORM2的时候通过FORM1的属性获取TXT的值。然后赋值给LBL同意这位的说法。
    不过用泛型集合或者用对象会更好。
      

  6.   

    用委托实现吧。使用委托:
    FormA:
            private void Button_Click(object sender, EventArgs e)
            {
            FormB b = new FormB();
                      b.AddUsersInfor = this.AddUsersInfor;
                 b.ShowDialog();
        }
            private void AddUsersInfor(string updatedata)
            {
                    Console.Writeline( updatedata );
            }FormB:
            public Action<string> AddUsersInfor;
        private void Button_Click(object sender, EventArgs e)
            {
                    if (AddUsersInfor != null) AddUsersInfor( "test data" );
            }
      

  7.   


    这个非常有用,在form2中重载一个构造函数就可以了,传入3个参数(就是你form1中的)
      

  8.   

    在Form2中重载带有三个参数的构造函数,然后在Form1调用Form2时将三个textbox的值通过
    重载的构造函数传过去就可以了!
      

  9.   

    用构造函数,在form2声明TextBox类型的全局变量,然后初始化,在form1 Button_Click事件里面写form2 fm2=new form2(),然后在这里面传递,可以在form2_load的事件进行赋值,当然也可以用委托
      

  10.   

    感谢各位的关注,也看到了几位高手的批评和建议。我只是在做一个东西当毕业设计,其实我并不是想以后从事这个工作。我C# 学的很不怎么样,基本的东西都不懂,只能通过csdn这个平台解决一下遇到的问题。在直白点说,我特希望高手能帮忙写代码,其他的我没有兴趣。没情趣的高手就不要浪费你的口舌了,谢谢!
      

  11.   

    建一个*.cs的类文件,字段用public 就行了
    调用就用"类名.字段名"