窗体的自定义按钮权限控制-扩展权限按钮详解
窗体的自定义按钮权限控制-扩展权限按钮详解
解决方案: 1. 在模块主窗体的SetMenuTag方法内添加菜单的自定义权限 打开模块主窗体,如:frmModuleMain.cs文件,在SetMenuTag方法内添加菜单的自定义权限: 1.1 添加ButtonAuthority.EX_01扩展权限 1.2 给ButtonAuthority.EX_01自定义按钮名称 C# Code: /// <summary> /// 定义菜单与窗体的功能权限。 /// </summary> private void SetMenuTag() { // //省略代码... // //新增的菜单功能,必须指定权限值 menuDynamicReport.Tag = new MenuItemTag(MenuType.DataForm, (int)CSFrameworkV5.Interfaces.ModuleID.ReportModule, AuthorityCategory.REPORT_ACTION_VALUE + ButtonAuthority.EX_01); (menuDynamicReport.Tag as MenuItemTag).SetActionName(ButtonAuthority.EX_01, "发送电子邮件"); } //来源:C/S框架网 | www.csframework.com | QQ:23404761 2. 功能窗体的自定义按钮权限控制 在Form.Load事件内调用ButtonAuthorized方法判断当前窗体是否拥有指定的权限, 如:ButtonAuthority.EX_01 C# Code: private void frmDynamicReport_Load(object sender, EventArgs e) { this.InitButtons(); // //省略代码... // //控制按钮权限 btnSendEmail.Enabled = this.ButtonAuthorized(ButtonAuthority.EX_01); } //来源:C/S框架网 | www.csframework.com | QQ:23404761 3. 如上操作完成,重新编译,并运行程序,管理员登录。 4. 系统管理模块【导入菜单数据】 打开系统管理模块的【菜单功能】界面,点【导入菜单数据】按钮,系统自动导入最新的菜单权限定义数据。 5. 测试案例 - 测试不分配权限 6. 测试案例 - 测试分配权限 扫一扫加作者微信 扫一扫加作者微信
参考文档:
表格栏位自定义功能窗体(frmGridCustomize.cs) Winform开发框架 - 特殊权限控制(扩展权限和自定义按钮功能) [转帖]FreeTextBox添加自定义按钮 GridView实现自定义按钮及中间插入记录排序功能 标签:C#.Net组件开发 - 属性窗体内显示自定义名称 关于扩展权限、扩展功能按钮及自定义功能点的命名|C/S框架网 如何进行菜单管理、扩展权限、更改自定义按钮名称|C/S框架网 如何扩展窗体的自定义权限按钮 如何删除Toolbar的自定义按钮? 如审核|反审|根据按钮名称删除 解决方案:扩展按钮自定义权限没有出现在权限树给用户勾选 DevExpress GridControl组件的EmbeddedNavigator属性添加用户自定义按钮 C/S系统开发框架权限系统 - 功能按钮权限值 - ButtonAuthority类详解 主窗体模块列表没有翻译多语言 - 重写SetLanguage方法自定义显示多语言 框架自定义窗体UI,消息对话框UI界面 模块主窗体怎样控制自定义按钮的权限
其它资料:
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 | |