首先创建一个用于记录用户登录状态,比如保存帐号,登录时间。使用公共静态属性定义LoginInfo CurrentUser. 该属性返回自己类的实例。在其它模块调用时使用LoginInfo.CurrentUser.Account.
public class LoginInfo
{
//用户帐号,登录帐号
private string _Account = "";
public string Account { get { return _Account; } set { _Account = value; } }
//用户名
private string _AccountName = "";
public string AccountName { get { return _AccountName; } set { _AccountName = value; } }
//登录时间
private DateTime _LoginTime;
public DateTime LoginTime { get { return _LoginTime; } set { _LoginTime = value; } }
private static LoginInfo _CurrentUser = null;
//应用单件模式,保存用户登录状态
public static LoginInfo CurrentUser
{
get
{
if (_CurrentUser == null)
_CurrentUser = new LoginInfo();
return _CurrentUser;
}
}
}
下面来测试调用这个类
public class Tester
{
public void Test(Label showMsg)
{
//假设这里登录窗体,并且由vjsdn帐号登录成功,保存vjsdn用户状态
bool login = true;
if (login)
{
LoginInfo.CurrentUser.Account = "vjsdn";
LoginInfo.CurrentUser.AccountName = "易学网";
LoginInfo.CurrentUser.LoginTime = DateTime.Now;
}
//假设这里是显示当前登录用户的窗体
string msg = "帐号:{0},用户名:{1} 在{2}时登录成功!";
//获取公共类保存的用户登录信息.
msg = string.Format(msg, LoginInfo.CurrentUser.Account, LoginInfo.CurrentUser.AccountName,
LoginInfo.CurrentUser.LoginTime.ToString());
showMsg.Text = msg;
MessageBox.Show(msg);
}
}