保存资料校验判断输入是否有效(IsInvalid)
![]() CommonTools.IsInvalid 方法 保存资料前需要对输入项进行检查,检查不通过,文本框右侧显示红色X图标,如下图: ![]() C# 代码: C# Code: /// <summary> /// 检查文本框资料是否无效 /// </summary> /// <param name="edit">文本框</param> /// <param name="errorText">提示消息</param> /// <param name="ruler">数字类型文本框校验规则</param> /// <returns></returns> public static bool IsInvalid(BaseEdit edit, string errorText = "不能为空", IntRuler ruler = IntRuler.不判断) { edit.ErrorText = ""; if (edit.Visible == false) return false; //隐藏的控件不处理 //数字类型 if ((edit.EditValue == DBNull.Value || edit.EditValue is Int32 || edit.EditValue is Decimal || edit.EditValue is Single || edit.EditValue is Double || edit.EditValue is int || edit.EditValue is float) && ruler != IntRuler.不判断) { bool valid = true; switch (ruler) { case IntRuler.大于0: valid = edit.EditValue.ToStringEx().ToDecimal() > 0; errorText = "必须大于0"; break; case IntRuler.等于0: valid = edit.EditValue.ToStringEx().ToDecimal() == 0; errorText = "必须等于0"; break; case IntRuler.小于0: valid = edit.EditValue.ToStringEx().ToDecimal() < 0; errorText = "必须小于0"; break; } if (valid == false) { edit.ErrorIconAlignment = ErrorIconAlignment.MiddleRight; edit.ErrorText = errorText; return true; } } //日期时间 if (edit is DateEdit editor) { if (editor.DateTime == DateTime.MinValue || edit.Text.IsEmpty()) { if (String.IsNullOrWhiteSpace(errorText)) errorText = "不能为空"; edit.ErrorIconAlignment = System.Windows.Forms.ErrorIconAlignment.MiddleRight; edit.ErrorText = errorText; return true; } } //字符或其他 if (edit.EditValue.IsEmpty()) { if (String.IsNullOrWhiteSpace(errorText)) errorText = "不能为空"; edit.ErrorIconAlignment = System.Windows.Forms.ErrorIconAlignment.MiddleRight; edit.ErrorText = errorText; return true; } return false; } //来源:C/S框架网 | www.csframework.com | QQ:23404761 使用: C# Code: //多个输入项检查。若检查不通过,文本框右侧显示红色X图标 var isInvalid = false | CommonTools.IsInvalid(txtDocDate) | CommonTools.IsInvalid(txtCustomerCode) | CommonTools.IsInvalid(txtSalesId) | CommonTools.IsInvalid(txtCurrency) | CommonTools.IsInvalid(txtPaymentType) | CommonTools.IsInvalid(txtTotalQuantity, "", IntRuler.大于0) | CommonTools.IsInvalid(txtTotalAmount, "", IntRuler.大于0); if (isInvalid) return false; //来源:C/S框架网 | www.csframework.com | QQ:23404761 ![]() 扫一扫加作者微信 ![]() ![]()
参考文档:
混音设备控制器(Mute Controller)-C#判断系统是否为静音 修改用户资料,保存后密码丢失的问题 C# C/S架构明细表产品资料输入及单条记录选取方案 SQL Server 判断是否存在数据库,表,列,视图 在文本框输入值,不离开焦点保存还是原来的值 SQL判断两个带有分隔符的字符串是否重叠 开发技巧:删除资料保存日志并检查数据是否能删除 删除用户前逻辑判断,检查当前用户是否关联业务数据或创建业务数据 SQL存储过程:删除基础资料前逻辑判断,检查是否有关联业务数据 C#正则表达式判断url是否网络路径(http/ftp/https三种协议) 新增功能:保存前本地缓存数据,资料暂存解决方案 - Winform开发框架 C#正则表达式判断URL是否正确-C/S开发框架 C# System.ServiceProcess类操作Windows服务,判断服务状态,启动停止服务-C/S开发框架 WinFramework轻量级开发框架 | 数据绑定(ViewDataBinding)与数据校验(ValidateForSave)|C/S开发框架 CSFrameworkV6 - 基础资料窗体 - 扩展Update方法保存多个表
其它资料:
什么是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内容管理系统 | |