Example #1
0
        /// <summary>
        /// 输入验证初始化
        /// </summary>
        private void InitValidationRules()
        {
            ConditionValidationRule notEmptyValidationRule = new ConditionValidationRule();

            notEmptyValidationRule.ConditionOperator = ConditionOperator.IsNotBlank; //验证条件
            notEmptyValidationRule.ErrorText         = "此栏不能为空!";                    //提示信息
            notEmptyValidationRule.ErrorType         = ErrorType.Default;            //错误提示类别
            dxvalidation.SetValidationRule(txtUid, notEmptyValidationRule);
            dxvalidation.SetValidationRule(txtPwd, notEmptyValidationRule);
        }
        /// <summary>
        /// 输入验证初始化
        /// </summary>
        private void InitValidationRules()
        {
            ConditionValidationRule notEmptyValidationRule = new ConditionValidationRule();

            notEmptyValidationRule.ConditionOperator = ConditionOperator.IsNotBlank; //验证条件
            notEmptyValidationRule.ErrorText         = "此栏不能为空!";                    //提示信息
            notEmptyValidationRule.ErrorType         = ErrorType.Default;            //错误提示类别
            _dxvalidation.SetValidationRule(intelb_title, notEmptyValidationRule);
            _dxvalidation.SetValidationRule(intelb_content, notEmptyValidationRule);
        }
Example #3
0
        /// <summary>
        /// 输入验证初始化
        /// </summary>
        private void InitValidationRules()
        {
            ConditionValidationRule notEmptyValidationRule = new ConditionValidationRule();

            notEmptyValidationRule.ConditionOperator = ConditionOperator.IsNotBlank; //验证条件
            notEmptyValidationRule.ErrorText         = "此栏不能为空!";                    //提示信息
            notEmptyValidationRule.ErrorType         = ErrorType.Default;            //错误提示类别
            dxvalidation.SetValidationRule(txtUid, notEmptyValidationRule);
            dxvalidation.SetValidationRule(txtPwd, notEmptyValidationRule);

            //txtUid.Leave += (object sender, EventArgs e) => { dxvalidation.Validate((Control)sender); };
            //txtPwd.Leave += (object sender, EventArgs e) => { dxvalidation.Validate((Control)sender); };
        }
 /// <summary>
 /// 为cr设置验证
 /// </summary>
 /// <param name="cr"></param>
 /// <param name="dt"></param>
 /// <param name="mark"></param>
 public static void setControlValidation(Control cr, string mark, DXValidationProvider dxValidationProvider1,
                                         ValidationRuleBase validationRule1)
 {
     if (cr.ToString() == mark)
     {
         if (cr.Text != "")
         {
             dxValidationProvider1.SetValidationRule(cr, validationRule1);
         }
         else
         {
             dxValidationProvider1.SetValidationRule(cr, null);
         }
     }
 }
        /// <summary>
        /// 执行验证
        /// </summary>
        /// <returns></returns>
        public bool Validate()
        {
            bool flag = true;

            if (provider != null)
            {
                provider.Dispose();
            }
            if (RuleList != null)
            {
                foreach (ValiControlRule item in RuleList)
                {
                    provider.RemoveControlError(item.control);
                    provider.SetIconAlignment(item.control, ErrorIconAlignment.MiddleRight);
                    provider.SetValidationRule(item.control, item.rule);
                    //if (!provider.Validate() && flag)
                    //{
                    //    flag = false;
                    //}
                }
                flag = provider.Validate();
            }
            else
            {
                flag = false;
            }
            return(flag);
        }
Example #6
0
        protected void SetValidationRule(Control control, ValidationRuleBase rule)
        {
            DXValidationProvider provider = ValidationProvider;

            provider.SetValidationRule(control, rule);
            provider.SetIconAlignment(control, ErrorIconAlignment.MiddleRight);
        }
Example #7
0
 public static void KiemTra(List <KiemTra> lstThongBao, DXValidationProvider dx)
 {
     foreach (KiemTra ctl in lstThongBao)
     {
         if (ctl._ChoQuaThang)
         {
             dx.SetValidationRule(ctl._Control, new TextValidationRule(string.Empty, true));
         }
         else if (ctl._Mail)
         {
             ctl._Control.Text = ctl._Control.Text ?? string.Empty;
             string strRegex = @"^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}" +
                               @"\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\" +
                               @".)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$";
             Regex re = new Regex(strRegex);
             if (ctl._Control.Text.Length > 9 && re.IsMatch(ctl._Control.Text.TrimEnd().TrimStart()))
             {
                 dx.SetValidationRule(ctl._Control, new TextValidationRule(ctl._ThongBao2, ctl._ChoQua));
             }
             else
             {
                 dx.SetValidationRule(ctl._Control, new TextValidationRule("Mail không hợp lệ", false));
             }
         }
         else if (ctl._SDT)
         {
             if (ctl._Control.Text.Length > 9)
             {
                 if (XuLyDuLieu.IsNumeric(ctl._Control.Text.Replace("+", string.Empty)))
                 {
                     dx.SetValidationRule(ctl._Control, new TextValidationRule(ctl._ThongBao2, ctl._ChoQua));
                 }
                 else
                 {
                     dx.SetValidationRule(ctl._Control, new TextValidationRule("Số điện thoại không hợp lệ", false));
                 }
             }
             else
             {
                 dx.SetValidationRule(ctl._Control, new TextValidationRule("Ít nhất 10 kí tự", false));
             }
         }
         else if (ctl._KiemTraChuoi)
         {
             int Te = ctl._Control.Text.Replace(" ", string.Empty).Replace("\r\n", "").Length;
             if (Te > ctl._Tu - 1 && ctl._Den + 1 > Te)
             {
                 dx.SetValidationRule(ctl._Control, new TextValidationRule(ctl._ThongBao2, ctl._ChoQua));
             }
             else
             {
                 dx.SetValidationRule(ctl._Control, new TextValidationRule(string.Format("Nhập từ {0} đến {1}", ctl._Tu, ctl._Den), false));
             }
         }
     }
 }
Example #8
0
 protected void SetValidationRuleAligRight(DXValidationProvider provider, Control control, ValidationRuleBase rule)
 {
     if (!_validationSort.Keys.Contains(control.Name))
     {
         _validationSort.Add(control.Name, string.Empty);
     }
     provider.SetValidationRule(control, rule);
     provider.SetIconAlignment(control, ErrorIconAlignment.MiddleRight);
 }
Example #9
0
        /// <summary>
        /// Contains
        /// </summary>
        /// <param name="dxProvider"></param>
        /// <param name="control"></param>
        /// <param name="value"></param>
        /// <param name="align"></param>
        /// <param name="type"></param>
        /// <param name="errorText"></param>
        public static void Contains(DXValidationProvider dxProvider, Control control, object value, ErrorIconAlignment align, ErrorType type, string errorText)
        {
            ConditionValidationRule rule = new ConditionValidationRule {
                ConditionOperator = ConditionOperator.Contains, ErrorText = errorText, ErrorType = type, Value1 = value
            };

            dxProvider.SetIconAlignment(control, align);
            dxProvider.SetValidationRule(control, rule);
        }
Example #10
0
        /// <summary>
        /// Notblank
        /// </summary>
        /// <param name="dxProvider"></param>
        /// <param name="control"></param>
        /// <param name="align"></param>
        /// <param name="type"></param>
        /// <param name="errorText"></param>
        public static void NotBlank(DXValidationProvider dxProvider, Control control, ErrorIconAlignment align, ErrorType type, string errorText)
        {
            ConditionValidationRule rule = new ConditionValidationRule {
                ConditionOperator = ConditionOperator.IsNotBlank, ErrorText = errorText, ErrorType = type
            };

            dxProvider.SetIconAlignment(control, align);
            dxProvider.SetValidationRule(control, rule);
        }
Example #11
0
        /// <summary>
        /// 设定控件的值不能为空白
        /// </summary>
        /// <param name="dXValidationProvider">验证对象提供者</param>
        /// <param name="ctl">控件对象</param>
        /// <param name="messageId">出错信息,可以用ID,可以用字符串</param>
        public static void SetControlValidBlank(DXValidationProvider dXValidationProvider, Control ctl, string messageId)
        {

            ConditionValidationRule notEmptyValidationRule = new ConditionValidationRule();
            notEmptyValidationRule.ConditionOperator = ConditionOperator.IsNotBlank;
            notEmptyValidationRule.ErrorText = messageId;
            dXValidationProvider.SetValidationRule(ctl, notEmptyValidationRule);
            dXValidationProvider.SetIconAlignment(ctl, ErrorIconAlignment.MiddleRight);
            
        }
Example #12
0
 /// <summary>
 /// 验证控件的值介一个区间内
 /// </summary>
 /// <param name="dXValidationProvider">验证对象提供者</param>
 /// <param name="ctl">控件对象</param>
 /// <param name="messageId">出错信息,可以用ID,可以用字符串</param>
 /// <param name="value1">起始值</param>
 /// <param name="value2">结束值</param>
 public static void SetControlValidBetween(DXValidationProvider dXValidationProvider, Control ctl, string messageId, DateTime value1, DateTime value2)
 {
     ConditionValidationRule rangeValidationRule = new ConditionValidationRule();
     rangeValidationRule.ConditionOperator = ConditionOperator.Between;
     rangeValidationRule.Value1 = value1;
     rangeValidationRule.Value2 = value2;
     rangeValidationRule.ErrorText = messageId;
     dXValidationProvider.SetValidationRule(ctl, rangeValidationRule);
     dXValidationProvider.SetIconAlignment(ctl, ErrorIconAlignment.MiddleRight);
 }
Example #13
0
        private static void SetValidationToControl(ref Control ctr, DataRow dr)
        {
            try
            {
                if (ctr is DevExpress.XtraEditors.LookUpEdit)
                {
                    DevExpress.XtraEditors.LookUpEdit led = ctr as DevExpress.XtraEditors.LookUpEdit;
                    AddDataSource(ref led, UIMessage.DBEngine.execReturnDataTable(dr[CommonConst.Validation].ToString(), CommonConst.A_LoginID, UIMessage.userID));
                }
                else
                {
                    //Devexpress valiation rules
                    string[] strSpl = dr[CommonConst.Validation].ToString().Split(':');
                    if (strSpl[0].Contains("ConditionValidationRule"))
                    {
                        ConditionValidationRule cvr = new ConditionValidationRule();
                        switch (strSpl[1])
                        {
                        case "IsNotBlank":
                            cvr.ConditionOperator = ConditionOperator.IsNotBlank;
                            cvr.ErrorText         = UIMessage.Get_Message(dr[CommonConst.ValidationMessID].ToString());
                            break;

                        case "Between":
                            cvr.ConditionOperator = ConditionOperator.Between;
                            cvr.Value1            = Convert.ToInt64(strSpl[2]);
                            cvr.Value2            = Convert.ToInt64(strSpl[3]);
                            cvr.ErrorText         = string.Format(UIMessage.Get_Message(dr[CommonConst.ValidationMessID].ToString()), cvr.Value1, cvr.Value2);
                            break;

                        case "Contains":
                            cvr.ConditionOperator = ConditionOperator.Contains;
                            cvr.Value1            = Convert.ToInt64(strSpl[2]);
                            cvr.ErrorText         = string.Format(UIMessage.Get_Message(dr[CommonConst.ValidationMessID].ToString()), cvr.Value1);
                            break;

                        case "NotAnyOf":
                            cvr.ConditionOperator = ConditionOperator.NotAnyOf;
                            cvr.Value1            = Convert.ToInt64(strSpl[2]);
                            cvr.ErrorText         = string.Format(UIMessage.Get_Message(dr[CommonConst.ValidationMessID].ToString()), cvr.Value1);
                            break;
                        }
                        cvr.ErrorType = ErrorType.Default;
                        dxValidationProvider1.SetValidationRule(ctr, cvr);
                        dxValidationProvider1.ValidationMode = ValidationMode.Auto;
                    }
                }
            }
            catch (Exception ex)
            {
                Helper.LogError(ex, ex.Message, "SetValidationToControl");
            }
        }
 protected static void SetValidationRuleAligRight(DXValidationProvider provider, Control control, ValidationRuleBase rule)
 {
     provider.SetValidationRule(control, rule);
     provider.SetIconAlignment(control, ErrorIconAlignment.MiddleRight);
 }
Example #15
0
        void CreateControl()
        {
            flowLayoutPanel1.Controls.Clear();
            ConditionValidationRule notEmptyValidationRule = new ConditionValidationRule();

            notEmptyValidationRule.ConditionOperator = ConditionOperator.IsNotBlank; //验证条件
            notEmptyValidationRule.ErrorText         = "此栏不能为空!";                    //提示信息
            notEmptyValidationRule.ErrorType         = ErrorType.Default;            //错误提示类别
            if (_users != null && _users.Any())
            {
                _users.ForEach(x =>
                {
                    LabelControl lbl = new LabelControl();
                    lbl.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center;
                    lbl.AutoSizeMode = DevExpress.XtraEditors.LabelAutoSizeMode.None;
                    lbl.Dock         = System.Windows.Forms.DockStyle.Left;
                    lbl.Location     = new System.Drawing.Point(2, 2);
                    lbl.Size         = new System.Drawing.Size(80, 26);
                    lbl.Text         = x.name;
                    TextEdit txt     = new TextEdit();
                    txt.Location     = new System.Drawing.Point(88, 5);
                    txt.Size         = new System.Drawing.Size(250, 20);
                    txt.Tag          = x;
                    txtList.Add(txt);
                    dxvalidation.SetValidationRule(txt, notEmptyValidationRule);
                    PanelControl panel = new PanelControl();
                    panel.Location     = new System.Drawing.Point(3, 3);
                    panel.Size         = new System.Drawing.Size(370, 30);
                    panel.Controls.Add(lbl);
                    panel.Controls.Add(txt);
                    panel.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder;
                    flowLayoutPanel1.Controls.Add(panel);

                    switch (_inteway)
                    {
                    case 1:     //邮件
                        groupControlType.Text = "电子邮件地址";
                        txt.Text = x.email;
                        txt.Properties.Mask.EditMask = "\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*";
                        txt.Properties.Mask.MaskType = DevExpress.XtraEditors.Mask.MaskType.RegEx;
                        break;

                    case 2:     //短信
                        groupControlType.Text = "手机号码";
                        txt.Text = x.phone;
                        txt.Properties.Mask.EditMask = "[1-9]{2}[0-9]{9}";
                        txt.Properties.Mask.MaskType = DevExpress.XtraEditors.Mask.MaskType.RegEx;
                        break;

                    case 3:     //电话
                        groupControlType.Text = "手机(电话)号码";
                        txt.Text = string.IsNullOrWhiteSpace(x.phone) ? x.tel : x.phone;
                        txt.Properties.Mask.EditMask        = "(\\d{3,4}-\\d{8})|([1-9]{2}[0-9]{9})";
                        txt.Properties.Mask.IgnoreMaskBlank = false;
                        txt.Properties.Mask.MaskType        = DevExpress.XtraEditors.Mask.MaskType.RegEx;
                        break;

                    case 4:     //面访
                        groupControlType.Text = "面访地址";
                        txt.Text = x.address;
                        break;
                    }
                });
                Height = 80 + 26 * _users.Count;
            }
        }
Example #16
0
 /// <summary>
 /// 验证控件的值是否大于或等于指定的值
 /// </summary>
 /// <param name="dXValidationProvider">验证对象提供者</param>
 /// <param name="ctl">控件对象</param>
 /// <param name="messageId">出错信息,可以用ID,可以用字符串</param>
 /// <param name="value1">指定的值</param>
 public static void SetControlValidGreaterOrEqual(DXValidationProvider dXValidationProvider, Control ctl, 
                                                 string messageId, decimal value1)
 {
     ConditionValidationRule rangeValidationRule = new ConditionValidationRule();
     rangeValidationRule.ConditionOperator = ConditionOperator.GreaterOrEqual;
     rangeValidationRule.Value1 = ctl.Text ;
     rangeValidationRule.Value2 = value1;
     rangeValidationRule.ErrorText = messageId;
     dXValidationProvider.SetValidationRule(ctl, rangeValidationRule);
     dXValidationProvider.SetIconAlignment(ctl, ErrorIconAlignment.MiddleRight);
 }
Example #17
0
 /// <summary>
 /// 验证控件的值是否大于指定的值
 /// </summary>
 /// <param name="dXValidationProvider">验证对象提供者</param>
 /// <param name="ctl">控件对象</param>
 /// <param name="messageId">出错信息,可以用ID,可以用字符串</param>
 /// <param name="value1">指定的值</param>
 public static void SetControlValidGreater(DXValidationProvider dXValidationProvider, Control ctl, 
                                         string messageId, DateTime value1)
 {
     ConditionValidationRule rangeValidationRule = new ConditionValidationRule();
     rangeValidationRule.ConditionOperator = ConditionOperator.Greater;
     rangeValidationRule.Value1 =DateTime.Parse(value1.ToString("HH:mm"));
     rangeValidationRule.Value2 =DateTime.Parse(ctl.Text );
     rangeValidationRule.ErrorText = messageId;
     dXValidationProvider.SetValidationRule(ctl, rangeValidationRule);
     dXValidationProvider.SetIconAlignment(ctl, ErrorIconAlignment.MiddleRight);
 }