zoukankan      html  css  js  c++  java
  • GridControl单元格编辑验证的方法

    本文实例演示了DevExpress实现GridControl单元格编辑验证的方法,比较实用的功能,具体方法如下:

    主要功能代码如下:

    /// <summary>
    /// 自定义单元格验证
    /// </summary>
    /// <param name="view">GridView</param>
    /// <param name="e">BaseContainerValidateEditorEventArgs</param>
    /// <param name="fieldNameHandler">委托</param>
    /// <param name="errorHanlder">委托</param>
    /// <param name="errorText">当验证不通过对时候,错误提示信息文字</param>
    public static void CustomValidatingEditor(this GridView view, BaseContainerValidateEditorEventArgs e, Predicate<string> fieldNameHandler, Predicate<object> errorHanlder, string errorText)
    {
      /*说明
       *在ValidatingEditor事件使用
       *eg:
       *string[] workType = new string[4] { "-1", "关闭但不删除", "启用", "删除" };
       *void gvLampConfig_ValidatingEditor(object sender, DevExpress.XtraEditors.Controls.BaseContainerValidateEditorEventArgs e)
       *{
       * GridView _view = sender as GridView;
       * _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 = new string[4] { "-1", "关闭但不删除", "启用", "删除" };
    void gvLampConfig_ValidatingEditor(object sender, DevExpress.XtraEditors.Controls.BaseContainerValidateEditorEventArgs e)
    {
      GridView _view = sender as GridView;
      _view.CustomValidatingEditor(e, fieldName => fieldName.Equals("TLampWorkStatus"), value => !workType.Contains<string>(value.ToString()), "若想设置为不修改,请输入-1即可");
    }
  • 相关阅读:
    利用智能手机(Android)追踪一块磁铁(三)
    利用智能手机(Android)追踪一块磁铁(二)
    利用智能手机(Android)追踪一块磁铁(一)
    android音频发生器
    接口的作用(java)
    Botposter.com集群ETCD2.3.7升级至3.0实录[原创]
    springboot2+jpa+hikari+oracle实战
    Nginx配置详解
    Nginx安装启动+springboot项目实现负载均衡实战
    springboot使用websocket进行实时传送信息实战(包含服务端和客户端)
  • 原文地址:https://www.cnblogs.com/MuNet/p/11487924.html
Copyright © 2011-2022 走看看