c# winform如何根据权限设置菜单栏
发布网友
发布时间:2022-05-16 03:28
我来回答
共3个回答
热心网友
时间:2023-10-09 23:59
你的意思是菜单栏选项一直都在,但是根据用户身份不同,在他点击之后确定他是否有权设置吗?
(我就这么理解了)你可以试试这样:
建立一个类,管理权限问题,每当用户点击按钮,在按钮事件中判断
if(!Class.hasRight)return;
至于那个等级的用户有什么权限,你可以给每一等级创建一个数组保存按钮名称,如{“BtnCopy”,“BtnCut”, ......}这些权限都放到类里面判断,返回hasRight的值
热心网友
时间:2023-10-10 00:00
菜单栏的那些菜单通过权限动态创建即可
热心网友
时间:2023-10-10 00:00
建立 SQL Server 数据库模型
1、原始方案
共设立了 5个实体模型:
A、操作员(Operator):存储系统登录用户名称、密码、启用状态等信息
B、权限组(RightsGroup):存储系统权限分组(即:权限角色)名称等信息
C、权限关系(RightsRelation):用于将A项和B项的间多对多关系拆解成两个对多关系
D、权限列表(RightsList):存储系统菜单项(即:权限项)标题、内部名称、权限状态等信息
E、权限组关系(RightGroupRelation):用于将B项和D项的间多对多关系拆解成两个对多关系
通过上面描述可以清楚看到C项和E项仅仅是为了拆解多对多关系而设立实体关系变得相对复杂了点稍作考虑便知既然是使用 C# WinForm + SQL Server 来完成这功能则可以考虑使用实体类来模拟数据库模型并将实体类打包成泛型集合后存储到 SQL Server 数据库 varBinary(max) 字段这样便可以将原始方案数据库模型缩减成 3个实体模型降低了关系复杂程度将原始方案稍作修改后即可得到如下改进方案