日期:2014-05-18  浏览次数:22206 次

用c#写winform程序时,怎么生成全局变量?
用c#写winform程序时,怎么生成全局变量?
比如,用户验证登录后,怎么用全局变量保存用户的信息;就像在asp.net一样生成session全局变量?

请指点,谢谢!!!

------解决方案--------------------
可以在一个类(class)里面定义一个static变量(var),
而后对这个变量赋值。(class.var= "XXX ")
然后其他地方就可以读取这个变量!~!~
-------
建议lz学习static关键字的含义~~~

------解决方案--------------------
用单件模式设计一个类。它的属性就是你要的全局变量

using System;

/// <summary>
/// AdminInfo 的摘要说明。
/// </summary>
public class adminInfo
{
private string strUserName;//名称
private string strPassword;//密码

private static volatile adminInfo Admin = null;
private static object lockHelp=new object();
private adminInfo()
{
//
// TODO: 在此处添加构造函数逻辑
//
}


public static adminInfo AdminInfo
{
get
{
if (Admin==null)
{
lock(lockHelp)
{
if (Admin==null)
Admin=new adminInfo();
}
}
return Admin;
}
}

public string UserName
{
get{ return strUserName;}
set{ strUserName = value;}
}

public string Password
{
get{ return strPassword;}
set{ strPassword = value;}
}
}


在窗口中使用下面的语句生成的AdminInfo
private adminInfo AdminInfo=adminInfo.AdminInfo;
AdminInfo.UserName= "名称 ";