为什么 我这个只能在弹出的student窗体上显示这个user值再打开这个窗口或者通过其他方法打开这个窗口那个值就没有了
student form = new student();
form.Show();
form.num.Text = this.user;//登录窗口的登录名
可以用什么方法将一个窗口的登陆界面的登录名保存下来 然后在别的窗体上一直可以调用。

解决方案 »

  1.   

    虽然不知道楼主具体的意思,不过有一个解决办法:
    在Winform程序中,有一个AppDomain对象可以保存本程序域的数据(作用有点类似ASP.Net的Session),通过这个对象的SetData()与GetData()方法可以实现数据缓存,然后跨窗体访问.
      

  2.   

    可以通过STUDENT窗体的构造函数 将你要穿的参数传递过去啊
     public partial class Student : Form
        {
            public int id;
            public Student(int id)
            {
                InitializeComponent();
                this.id=id;
            }
         }
    _____________________________________________
    student form = new student(id); //id 为要传递的值
    form.Show(); 
      

  3.   

    全局变量,创建一个全局的静态类可以达到这个目的public static class TVars 

        private static string m_userName = string.Empty; public static string UserName 
        { 
            get{return m_userName;} 
            set{m_userName = value;} 
        } ... 
    }使用时,GlobeClass.UserName = "Zhang" 
      

  4.   

    C#里面没有全局变量的概念,可以通过静态属性来实现。public static UserCommon
    {
        public static string UserName{get; set;}
    }
    登录的时候给他赋值: UserCommon.UserName = tbUser.Text;
    其它要用的时候直接调用UserCommon.UserName就可以了。
      

  5.   

    student form = new student(); 
    form.num.Text = this.user;//登录窗口的登录名 
    form.Show(); 
    交换2句顺序,form showmodal都没问题