`
xqf222
  • 浏览: 117112 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

C#全局变量的使用

 
阅读更多

C#全局变量的使用

C#应用程序中.用户登陆后.比如要把用户名,用户等级,用户IP地址等等记录到变量中.我们需要使用到全局变量.就跟ASP网站中登陆后使用SESSION,COOKIE的原理是一样的.有一种方式总可能会记录下用户登陆的信息,C#中用到的是自定义一个类.其中定义静态变量来实现的,下面是使用的部分代码:
//定义类GlobalUserClass.CS 类代码
using System;
using System.Net;

namespace EP_MIS
{
/// <summary>
/// ProcessUserClass 的摘要说明。
/// </summary>
public class GlobalUserClass
{

private static string HostIPAddress="";
private static string CurrentUserName="";

public GlobalUserClass()
{
//
// TODO: 在此处添加构造函数逻辑
//

// 在此处放置用户代码以初始化页面

}

public static string GlobalUserIP
{
get
{
if (HostIPAddress=="")//如果没有创建,就创建一个新的
{
IPHostEntry oIPHost=Dns.Resolve(Environment.MachineName);
if(oIPHost.AddressList.Length>0)
HostIPAddress=oIPHost.AddressList[0].ToString();
}
else
{
HostIPAddress="";
}
return HostIPAddress;
}
}

public static string GlobalUserName
{
get
{
return CurrentUserName;
}
set
{
CurrentUserName=value;
}
}
}
}

//在登陆的主窗体界面实例化这个类.并在用户登陆成功后将登陆后的用户名等等参数传给类.然后在其他的窗体中就可以直接使用类似"类名称.类中的全局静态变量名"来调用此全局的变量数值.

public GlobalUserClass myclass=new GlobalUserClass();

public MainForm()
{
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent();

//
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
//
}
//按钮事件中关键代码

if(dbUserName==inputUserName)
{

MessageBox.Show("用户当前登陆成功","登陆成功");
GlobalUserClass.GlobalUserName=inputUserName;
//this.textBox3.Text=GlobalUserClass.GlobalUserName;
SoftUserContactForm form2=new SoftUserContactForm();
this.groupBox1.Visible=false;
form2.Show();

}
else
{

MessageBox.Show("用户当前登陆失败","登陆成功");
}

//别的窗体中调用
textBox1.Text=GlobalUserClass.GlobalUserName;

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics