【转】DXErrorProvider与DxValidationProvider的使用

1. DXErrorProvider:错误提示控件,用法类似于VS的winform控件中的ErrorProvider。

下面为一个使用实例,验证文本框输入是否为数字:
①.添加System.Text.RegularExpressions引用。
②.在设计视图上拖一个textEdit控件textEdit1。
③.验证输入是否为数字,不是显示错误提示。

public bool IsNumeric(string sNumeric)
        {
            return (new Regex("^[\\+\\-]?[0-9]*\\.?[0-9]+$")).IsMatch(sNumeric);
        }
private void simpleButton1_Click(object sender, EventArgs e)
        {
            InitValidationRules();
            dxErrorProvider1.ClearErrors();
            if (IsNumeric(this.textEdit1.Text)==false)
            {
                  dxErrorProvider1.SetError(textEdit1, "输入要为数字!");//DXErrorProvider.SetError(验证的控件,错误提示)
            }
        }

2.DxValidationProvider:验证控件,类似于VS的web控件中的"验证控件"

下面为DxValidationProvider使用实例:
①.添加DevExpress.XtraEditors.DXErrorProvider引用。
②.在设计视图上拖两个textEdit控件textEdit2和textEdit3。
③.实现验证textEdit2不可为空,textEdit3输入值在0-100之间:

private void InitValidationRules()
        {
            ConditionValidationRule notEmptyValidationRule = new ConditionValidationRule();
            notEmptyValidationRule.ConditionOperator = ConditionOperator.IsNotBlank;//验证条件
            notEmptyValidationRule.ErrorText = "此栏不能为空!";//提示信息
            notEmptyValidationRule.ErrorType = ErrorType.Information;//错误提示类别
            dxValidationProvider1.SetValidationRule(textEdit2,notEmptyValidationRule);

            ConditionValidationRule rangeValidationRule = new ConditionValidationRule();
            rangeValidationRule.ConditionOperator = ConditionOperator.Between;
            rangeValidationRule.Value1 = 0;
            rangeValidationRule.Value2 = 100;
            rangeValidationRule.ErrorText = "0 - 100 之间任意一数字!";
            rangeValidationRule.ErrorType = ErrorType.Information;
            dxValidationProvider1.SetValidationRule(textEdit3,rangeValidationRule);
        }

你可能感兴趣的:(【转】DXErrorProvider与DxValidationProvider的使用)