解决方案 »

  1.   

    把  form1  作为参数 在form2中传递。。再从form2中传递给form3 ,对label值进行修改。
      

  2.   

    http://zhidao.baidu.com/link?url=0yqahq3ke56CNNTwbD3gFkt1fMVU1mjMr4fSNZ4NMCKLg6WsNTbiiVBJV03Cztrc_7Jnc9CEQRM40LD0F01wbK看下这个 看有帮助没
      

  3.   

    我这办法可能比较麻烦  仅供参考
    // Form1
    private unsafe void button1_Click(object sender, EventArgs e)
            {
                Form2 frm = new Form2();
                frm.GetForm(this);
                frm.Show();
            }// Form2
     public Form1 form = null;        public void GetForm(Form1 theform)
            {
                form = theform;
            }        private void button1_Click(object sender, EventArgs e)
            {
                Form3 frm = new Form3();
                frm.GetForm(form);
                frm.Show();
            }// Form3
     public Form1 form = null;        public void GetForm(Form1 theform)
            {
                form = theform;
            }        private void button1_Click(object sender, EventArgs e)
            {
                form.textBox1.Text = "testtest";/*此次需要将Form1设计窗体中的textbox1的属性从Private 改为public就可以再Form3中调用,否则会出现错误*/
            }
      

  4.   

    将form1在设置为一个全局变量,再写一个函数更新Label的值,然后form1打开form2,form2,打开form3,form3中调用form1中的更新函数更新label信息Form1中:
     public static Form1 f1;
     public Form1()
            {
                InitializeComponent();          
                f1 = this;//这样设置是为了能在form3中调用Form1的函数
            }
        public void updateInfo(string info)//更新Lable信息
            {
                label1.Text = info;
            }至于怎么打开其他窗体就不写了,无非是new一个窗体在show;在Form3中,按钮调用Form1中的updateInfoprivate void button1_Click(object sender, EventArgs e)
            {
                Form1.f1.updateInfo("哈哈我是Form3传来的参数!");
            }
    打完收工
      

  5.   

    这种情况我个人偏爱用事件(event)来实现。
      

  6.   

    Event比较好点。建议楼主学下。我之前一直是用6楼的那种做法。工作了之后被老大数落了一次之后才改的习惯。