当前位置: 代码迷 >> C# >> 设置全局变量后,为何别的窗体不能使用
  详细解决方案

设置全局变量后,为何别的窗体不能使用

热度:74   发布时间:2016-05-05 04:21:50.0
设置全局变量后,为什么别的窗体不能使用
我设置了一个全局变量 users 记录登陆的用户名。然后其他窗体根据users的记录来判断是否有权限,允许进行操作。现在只有登陆密码校验的窗体能直接使用这个变量赋值,其他窗体里使用就会提示“未定义”。 、、
 本人是小菜鸟,大家莫笑哈,希望回答能详细一点昂,不然会看不懂。
另外,我要如何将button按钮和数据库连接起来,数据库中存储该用户的信息表表明该用户没有点击这个按钮的权限,点击之后会提示没有权限呢。
------解决思路----------------------
没有点击 权限,你都不能记录成string的User了,而是记录成实体类的User。
比如:
public static User _currentUser;(对它进行get;set;)

你的User类 也要定义个字段表示 是否有操作btn的权限,在程序中给判断一下,控制btn的IsEnabled属性。

------解决思路----------------------
你的类就应该是一个很干净的类,不应该直接去获取其它窗体的值,而是应该通过set代码在窗体里面给它赋值
------解决思路----------------------
引用:
Quote: 引用:

没有点击 权限,你都不能记录成string的User了,而是记录成实体类的User。
比如:
public static User _currentUser;(对它进行get;set;)

你的User类 也要定义个字段表示 是否有操作btn的权限,在程序中给判断一下,控制btn的IsEnabled属性。

全局变量的这个问题我刚刚解决啦,现在就是想知道怎么实现判断权限的这个功能嗯。我先。。。嗯。琢磨琢磨你说的什么意思。

判定权限这个,你要确定你用户的限权范围,然后数据库里要建好权限表,登录的时候判定哪个用户,确定好权限范围,有的就true,没有的flase,加载的时候就判定好就行了!
------解决思路----------------------
全局变量用static ,如public  static  string  bl; 
get set是定义属性的