ButtonStateChanged事件详解 - 当按钮状态改变时触发的事件
ButtonStateChanged事件详解 - 当按钮状态改变时触发的事件
ButtonStateChanged事件 当用户点击【新增】、【删除】、【修改】、【保存】、【取消】等数据操作按钮时立即触发,通知程序按钮状态发生变化。 注意事项: ButtonStateChanged事件适用于控制当前界面的组件状态,比如设置组件的ReadOnly, Enable属性。 ButtonStateChanged事件被频繁触发,不建议在该事件内调用后台接口或查询数据。 【新增】操作按钮调用ButtonStateChanged事件: C# Code: /// <summary> /// 新增记录 /// </summary> /// <param name="sender"></param> public virtual void DoAdd(IButtonInfo sender) { this._UpdateType = UpdateType.Add; this.SetEditMode(); this.ButtonStateChanged(_UpdateType); } //来源:C/S框架网 | www.csframework.com | QQ:23404761 【修改】操作按钮调用ButtonStateChanged事件: C# Code: /// <summary> /// 修改数据 /// </summary> /// <param name="sender"></param> public virtual void DoEdit(IButtonInfo sender) { this._UpdateType = UpdateType.Modify; this.SetEditMode(); this.ButtonStateChanged(_UpdateType); } //来源:C/S框架网 | www.csframework.com | QQ:23404761 C# Code: /// <summary> /// 当按钮状态改变时触发的事件 /// </summary> /// <param name="currentState"></param> protected override void ButtonStateChanged(UpdateType currentState)// 按钮状态改变时触发的事件 { //设置编辑明细页面的控件 this.SetDetailEditorsAccessable(panelDetailPage, this.DataChanged); this.SetDetailEditorsAccessable(panelControl2, this.DataChanged); txtARNO.Enabled = false; txtAppDate.Enabled = false; txtAppUser.Enabled = false; txtCurrency.Enabled = false; lblStatus.Text = this.UpdateTypeName; this.SetEditorEnable(txtCustomerName, false, true);//禁用客户名称 base.SetGridCustomButtonAccessable(gcDetail, this.DataChanged);//设置明细表格的按钮状态 //显示图片状态 ucOpacityImage1.ShowImage(_BLL); } //来源:C/S框架网 | www.csframework.com | QQ:23404761 ButtonStateChanged事件应用实例(2),源码参考: C# Code: //按钮状态改变时触发的事件 protected override void ButtonStateChanged(UpdateType currentState) { base.ButtonStateChanged(currentState); if (currentState == UpdateType.Modify) { //txtSONO.Enabled= false;//修改状态下不允许修改【主键】的数据 txtSONO.Properties.ReadOnly = true;//修改状态下不允许修改【主键】的数据 } txtISID.Properties.ReadOnly = true;//禁止修改 txtCreationDate.Properties.ReadOnly = true;//禁止修改 txtCreatedBy.Properties.ReadOnly = true;//禁止修改 txtLastUpdateDate.Properties.ReadOnly = true;//禁止修改 txtLastUpdatedBy.Properties.ReadOnly = true;//禁止修改 txtFlagApp.Properties.ReadOnly = true;//禁止修改 txtAppUser.Properties.ReadOnly = true;//禁止修改 txtAppDate.Properties.ReadOnly = true;//禁止修改 } //来源:C/S框架网 | www.csframework.com | QQ:23404761 扫一扫加作者微信
参考文档:
C#深入剖析事件(C# Event详解) [原创]老鼠->猫->人 事件触发 C# 跟踪对象的所有事件触发 C#委托(Delegate)事件(Event)应用详解 (原) C#.Net窗体多重继承构造器及Load事件执行顺序详解 扩展按钮功能 - 扩展一个【复制单据】按钮操作详解 DevExpress GridView单元格CellValueChanged事件详解 关于LookupEdit组件选择一条纪录不触发EditValueChanged事件 C/S系统快速开发框架数据操作窗体(单表、主从表窗体)按钮事件 DevExpress GridView在只读状态下如何隐藏表格的按钮EditorShowMode|ShowButtonMode DevExpress GridView 表格内嵌ButtonEdit按钮列图片按钮及Click事件 C#获取按钮的EventClick事件,EventHandlerList委托的调用列表 解决方案:C# 当按钮不可见时(Visible=False),调用Button.PerformClick事件无效! C/S系统开发框架权限系统 - 功能按钮权限值 - ButtonAuthority类详解 窗体的自定义按钮权限控制-扩展权限按钮详解
其它资料:
什么是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内容管理系统 | |