Delphi中比较好实现.
换成C#,好像不能用form1.textBox1.Text=form2.label1.Text;
请问如何做啊?
就是不同窗体之间控件的属性赋值.顺便,问一下如何创建一个多窗体公用的变量..
谢谢哦.

解决方案 »

  1.   

    http://blog.csdn.net/zhzuo/archive/2004/04/05/22027.aspx
    这里面讲得很清楚,因为我也是看了里面的内容学会的!
    好的话,别忘记给我分数哦!
      

  2.   

    在Form1的button事件里:
    private void button1_Click(object sender, EventArgs e)
            {
                Form2 f = new Form2();
                f.Tag = textBox1.Text;
                f.ShowDialog();
            }在Form2的Load事件里这样写:
    textBox1.Text = Convert.ToString(this.Tag);Tag是窗体自带的一个属性,Object类型
      

  3.   

    1、可以将label1设置成公共的类型(public),有一个属性可以选择,但不建议这样做。
    2、在form2中加一个属性LabelText,调用时form1.textBox1.Text=form2.LabelText;
    3、跟楼上的2一样,用委托,但是如果只是这样的小功能的话,个人然觉也没必要,如果还有比较复杂的实现,那么用委托。
      

  4.   

    用构造函数吧!
    构造函数比较简单。例如 form2的构造函数 public form1(string text1){…… ;textBox1.Text=text1}在form2中调用form1时就把form2的label1中的text传给form1  form1 frm=new form1(label1.text);
    这样就把form2中的label1.text传给了form1中的textbox1.text
      
      

  5.   

     写错了是form1的构造函数不是form2form1 的构造函数public form1(string text1){…… ;textBox1.Text=text1} 
      

  6.   

    1.构造函数传参数
    2.公共变量或属性
    3.控件的可见性调成public
      

  7.   

    将控件的可见性改为public 然后再一个form 中实例化另一个 就可以了