zoukankan      html  css  js  c++  java
  • GridControl 使用技巧2——验证单元格输入值

    方法①:使用 ValidatingEditor 事件(一般用于对整个GridView内的文本框进行数据验证)

      当单元格输入格式错误时,直接在该行下方提示,代码如下:

        using System.Text.RegularExpressions; //注意添加引用
    
        private void gridView1_ValidatingEditor(object sender, DevExpress.XtraEditors.Controls.BaseContainerValidateEditorEventArgs e)
        {
            if (gridView1.FocusedColumn == colcount) //设置校验列
            {
                bool result = false;
                Regex regex = new Regex(@"^+?d+$");
                result = regex.IsMatch(e.Value.ToString());
                if (!result)
                {
                    e.ErrorText = "请输入一个正整数";
                    e.Valid = false;
                    return;
                }
            }
        }
    View Code

    效果如下:

    方法②:使用 ValidatingEditor 事件进行验证,InvalidValueException 事件进行错误信息提示(一般用于对整个GridView内的文本框进行数据验证)

      当单元格输入格式错误时,弹出消息看提示,代码如下:

        using DevExpress.XtraEditors.Controls; //注意添加引用
    
        private void gridView1_ValidatingEditor(object sender, DevExpress.XtraEditors.Controls.BaseContainerValidateEditorEventArgs e)
        {
            DataRow dr = gridView1.GetFocusedDataRow();
    
            if (gridView1.FocusedColumn == colcount)
            {
                bool result = false;
                Regex regex = new Regex(@"^+?d+$");
                result = regex.IsMatch(e.Value.ToString());
                if (!result)
                {
                    e.Valid = false;
                }
            }
        }
    
        private void gridView1_InvalidValueException(object sender, DevExpress.XtraEditors.Controls.InvalidValueExceptionEventArgs e)
        {
            e.ExceptionMode = ExceptionMode.DisplayError;
            e.WindowCaption = "输入错误";
            e.ErrorText = "请输入一个正整数";
            gridView1.HideEditor();
        }
    View Code

    效果如下:

    方法③:使用 RepositoryItemTextEdit 的 Validating 事件进行验证,InvalidValueException 事件进行错误信息提示(一般用来对内置控件的单元格进行数据验证)

      当单元格输入格式错误时,弹出消息看提示,代码如下:

        private void repositoryItemTextEdit1_Validating(object sender, CancelEventArgs e)
        {
            //将sender转换为BaseEdit类型,使用EditValue来获取当前输入的值并进行校验
            BaseEdit textEdit = sender as BaseEdit;
    
            if (textEdit.EditValue.ToString().Trim().Length > 0)
            {
                bool result = false;
                Regex regex = new Regex(@"^+?d+$");
                result = regex.IsMatch(textEdit.EditValue.ToString());
                if (!result)
                {
                    e.Cancel = true; //校验不通过
                    return;
                }
            }
        }
    
        private void gridView1_InvalidValueException(object sender, DevExpress.XtraEditors.Controls.InvalidValueExceptionEventArgs e)
        {
            e.ExceptionMode = ExceptionMode.DisplayError;
            e.WindowCaption = "输入错误";
            e.ErrorText = "请输入一个正整数";
            gridView1.HideEditor();
        }
    View Code

    效果如下:

  • 相关阅读:
    linux tmux基本操作
    AJAX json集合传入Controller后台
    python 数据读取
    appium
    接口测试设计思路
    python 常用模块
    接口测试程序部分
    测试用例设计思路
    mock_待续
    网站收藏
  • 原文地址:https://www.cnblogs.com/719468186-QAQ/p/6340607.html
Copyright © 2011-2022 走看看