我建了一个项目里面有多个form,想从form2中转到form3,已完成没问题
  public Form3 fm3 = new Form3();
  fm3.Show();
  this.Visible = false;
 但是在form3中却不能使form2.visible=true;
  
  同样的问题,串口控件在form2,form3中怎样不间断共享

解决方案 »

  1.   

    public Form3 fm3 = new Form3();
    this.Hide();
      fm3.ShowDialog();
    this.Show();//数据共享搞一个专门的类,譬如
     class Program
        {
            public static string aaa = "";
    }form2中
    Program.aaa ="form2";
    form3中Console.Wirte(Program.aaa);即可打印出form2
      

  2.   

    用下面任一办法可以解决:
    1、用接口Interface
    2、用委托!
      

  3.   

     在Form1中:
     Form2 frm = new Form2();
     frm.aa = this.textBox1.Text;
     frm.Show();在Form2中:
    定义一个public string aa;
      

  4.   

    首先在frm2中定义一个
    public int i;
    if(i==1)
    {
    this.visible=true;
    }
    在frm3中实例化frm2;
    from2 frm=new from();
    frm.i=1;           //在from3中为from2中的i赋值
      

  5.   

    搞清楚form2、3它们之间是什么依赖关系,正确地表达这种基本的依赖关系,否则很难到一个正规的团队中与人沟通。
      

  6.   

    http://blog.csdn.net/bdstjk/article/details/7007882
      

  7.   

    在from3中搞一个委托,然后在from2中注册这个事件。from2中根据from3的执行情况visible。完事
      

  8.   

    从2传参数到3public Form2(string aa)
    {
    string str="参数";
    Form3 fm3 = new Form3(str);
    }从3传参数到2
    public Form3(string aa)
    {
    string str="参数";
    Form2 fm2 = new Form2(str);
    }