由form1引出form2,又由form2引出form3(此时隐藏form2),又由form3引出form4(此时隐藏form3).form4完成最后的设置后直接关掉这时又回到了form1。除了form1外每个form中都有一个后退按纽,功能是隐藏它本身,显示出它的上一个窗体。
问题是:
1.假如我在form3中输入了新的数据后引出form4后在单击form4的后退按纽显示form3时刚刚输入的数据不见了,回到了form3初始的状态,怎么做让每个form在切换时显示它输入后的状态呢?
2.当在form4完成最后的设置后直接关掉只显示form1时怎样让form3中的一个值传递给form1呢(这个值在由form3引出form4时也传递给了form4)

解决方案 »

  1.   

    用一个结构和类存放所有的参数,然后放在Form的Tag属性里;
    窗口之间逐个传递即可。
      

  2.   

    对于每个form都是一个类,楼上所说的静态类是从哪里来的呢?自己又重新定义的?能否在帮忙说清楚一点呢,谢谢了!
      

  3.   

    这里讲了三种方式
    http://blog.csdn.net/zhzuo/archive/2004/04/05/22027.aspx
      

  4.   

    你可以定义一个自定的Form类,继承自系统的Form,然后你在里面添加需要传递的数据,你的实际的窗体都从这个自定义窗体继承就好了啊
      

  5.   

    http://blog.csdn.net/zhzuo/archive/2004/04/05/22027.aspx的确这个不错:
    Form之间传递数据就是类之间传递数据
      

  6.   

    还有静态类这一说法?(类还能用static来修饰?)
    小女子还是新手,望大家多多指教
    那怎么写这个静态类呢,哪位能否给点代码参考参考,先谢了!
      

  7.   

    http://jhtchina.cnblogs.com/articles/202629.html
      

  8.   

    上面有完整的代码
    DataSet传递也是这样的
      

  9.   

    关键就是不知道这么静态的类怎么写啊,因为每个form中需要存放的数据的总数是不同的。
    哪位帮给这个静态类写点代码我看看啊
      

  10.   

    在大家的指导下我写了如下类不知道正确与否
    public  class frmTemp
    {
       private static string name= string.Empty;
       public frmTemp()
      {
     
      }  public static string Name 
      { 
         get 
        { 
    return name;
         } 
        set 
        { 
    name = value;
        } 
       }
    }  我在保存其中一个窗体中的所有信息时候这样做的:
    frmTemp.Name=txtConnection.Text+cboEngine.Text+txtUid.Text+txtPwd.Text+cboServers.Text+comboBox2.Text;
    但不知道读取时怎么做了,怎样让这个窗体中的所有控件读取它自身的值?