DevExpress实现GridControl单元格编辑验证的方法
本文实例演示了DevExpress实现GridControl单元格编辑验证的方法,比较实用的功能,具体方法如下:
主要功能代码如下:
///<summary> ///自定义单元格验证 ///</summary> ///<paramname="view">GridView</param> ///<paramname="e">BaseContainerValidateEditorEventArgs</param> ///<paramname="fieldNameHandler">委托</param> ///<paramname="errorHanlder">委托</param> ///<paramname="errorText">当验证不通过对时候,错误提示信息文字</param> publicstaticvoidCustomValidatingEditor(thisGridViewview,BaseContainerValidateEditorEventArgse,Predicate<string>fieldNameHandler,Predicate<object>errorHanlder,stringerrorText) { /*说明 *在ValidatingEditor事件使用 *eg: *string[]workType=newstring[4]{"-1","关闭但不删除","启用","删除"}; *voidgvLampConfig_ValidatingEditor(objectsender,DevExpress.XtraEditors.Controls.BaseContainerValidateEditorEventArgse) *{ *GridView_view=senderasGridView; *_view.CustomValidatingEditor(e,fieldName=>fieldName.Equals("TLampWorkStatus"),value=>!workType.Contains<string>(value.ToString()),"若想设置为不修改,请输入-1即可"); *} */ if(fieldNameHandler(view.FocusedColumn.FieldName)) { if(errorHanlder(e.Value)) { e.Valid=false; e.ErrorText=errorText; } } }
代码使用方法如下:
string[]workType=newstring[4]{"-1","关闭但不删除","启用","删除"}; voidgvLampConfig_ValidatingEditor(objectsender,DevExpress.XtraEditors.Controls.BaseContainerValidateEditorEventArgse) { GridView_view=senderasGridView; _view.CustomValidatingEditor(e,fieldName=>fieldName.Equals("TLampWorkStatus"),value=>!workType.Contains<string>(value.ToString()),"若想设置为不修改,请输入-1即可"); }