首页 > 其他分享 >gridlookupedit可编辑输入属性设置

gridlookupedit可编辑输入属性设置

时间:2023-07-21 15:14:30浏览次数:28  
标签:Filtering DevExpress System gridlookupedit new 属性 Properties 输入 view

设置三个属性

        this.gl_IOPerson.Properties.ImmediatePopup = true;
        this.gl_IOPerson.Properties.PopupFilterMode = DevExpress.XtraEditors.PopupFilterMode.Contains;
        this.gl_IOPerson.Properties.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.Standard;

添加一个可以检索gridview里各列数据的方法

   /// <summary>
    /// /// 设置GridLookUpEdit多列过滤
    /// /// </summary>
    /// /// <param name="repGLUEdit">GridLookUpEdit的知识库,eg:gridlookUpEdit.Properties</param>
    public static void SetGridLookUpEditMoreColumnFilter(this Control control,DevExpress.XtraEditors.Repository.RepositoryItemGridLookUpEdit repGLUEdit)
    {
        repGLUEdit.EditValueChanging += (sender, e) =>
        {
            control.BeginInvoke(new System.Windows.Forms.MethodInvoker(() =>
            {
                GridLookUpEdit edit = sender as GridLookUpEdit; 
                DevExpress.XtraGrid.Views.Grid.GridView view = edit.Properties.View as DevExpress.XtraGrid.Views.Grid.GridView;
                //获取GriView私有变量
                System.Reflection.FieldInfo extraFilter = view.GetType().GetField("extraFilter", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance); 
                List<DevExpress.Data.Filtering.CriteriaOperator> columnsOperators = new List<DevExpress.Data.Filtering.CriteriaOperator>();
                foreach (GridColumn col in view.VisibleColumns)
                {
                    if (col.Visible && col.ColumnType == typeof(string))
                        columnsOperators.Add(new DevExpress.Data.Filtering.FunctionOperator(DevExpress.Data.Filtering.FunctionOperatorType.Contains, new DevExpress.Data.Filtering.OperandProperty(col.FieldName), new DevExpress.Data.Filtering.OperandValue(edit.Text)));
                }
                string filterCondition = new DevExpress.Data.Filtering.GroupOperator(DevExpress.Data.Filtering.GroupOperatorType.Or, columnsOperators).ToString(); extraFilter.SetValue(view, filterCondition);
                //获取GriView中处理列过滤的私有方法
                System.Reflection.MethodInfo ApplyColumnsFilterEx = view.GetType().GetMethod("ApplyColumnsFilterEx", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance); ApplyColumnsFilterEx.Invoke(view, null);
            }));
            
        };
    }

再调用此方法即可实现功能 SetGridLookUpEditMoreColumnFilter(this,gl_IOPerson.Properties);

标签:Filtering,DevExpress,System,gridlookupedit,new,属性,Properties,输入,view
From: https://www.cnblogs.com/caozhengze/p/17571429.html

相关文章

  • matlab郭彦甫02基本操作与矩阵输入
    1.变量不声明    变量只能由数字 字母 _  组成        且不能以数字开头2.保留关键字  ans  运算结果 i  j  复数 inf  无穷∞eps  浮点相对精度  很小的数值NaN  非数字pi  圆周率iskeyword  查看matla......
  • python添加让输入框清空的按钮
    如何在Python中添加让输入框清空的按钮概述在Python中,可以通过使用Tkinter库来创建GUI应用程序。本文将指导你如何在Python中添加一个按钮,用于清空一个输入框中的内容。我们将使用Tkinter库中的Entry和Button组件,以及相应的事件处理函数来实现这个功能。步骤下面是实现该功能的......
  • Mybatis属性配置示例(properties)
    属性(properties)这些属性可以在外部进行配置,并可以进行动态替换。既可以在典型的Java属性文件中配置这些属性,也可以在properties元素的子元素中设置。参考官网:https://mybatis.net.cn/configuration.html#properties首先创建数据库配置文件db.propertiesdriver=com.mysql.c......
  • A+B 输入输出练习I
    题目描述你的任务是计算a+b。这是为了初学者专门设计的题目。你肯定发现还有其他题目跟这道题的标题类似,这些问题也都是专门为初学者提供的。输入输入包含一系列的a和b对,通过空格隔开。一对a和b占一行。输出对于输入的每对a和b,你需要依次输出a、b的和。如对......
  • A+B 输入输出练习II
    题目描述你的任务是计算a+b。输入第一行是一个整数N,表示后面会有N行a和b,通过空格隔开。输出对于输入的每对a和b,你需要在相应的行输出a、b的和。 如第二对a和b,对应的和也输出在第二行。样例输入2151020样例输出630代码#include<std......
  • A+B 输入输出练习III
    题目描述你的任务是计算a+b。输入输入中每行是一对a和b。其中会有一对是0和0标志着输入结束,且这一对不要计算。输出对于输入的每对a和b,你需要在相应的行输出a、b的和。 如第二对a和b,他们的和也输出在第二行。样例输入 15102000样例输......
  • 请问为什么cmd中输入python显示no python at (python所在地址)?
    可能是由于您的Python安装路径不在系统的PATH环境变量中导致的。您可以尝试将Python的安装路径添加到PATH环境变量中,然后再次尝试在cmd中输入python。如果您已经将Python的安装路径添加到了PATH环境变量中,但仍然无法在cmd中输入python,那么可能是因为您的系统中存在多个版本的Pyt......
  • 从输入URL到页面加载完成的过程中都发生了什么
      首先,对于http肯定是有客户端和服务器的,在这个语境中,客户端和服务器本质上也都是一个软件,实现了http协议相关标准的软件。客户端一般由都是由浏览器充当,也就是说,在浏览器中实现了http客户端的相关功能。而服务器的实现就多种多样啦,我们可以用java写servlet,c#写ASP.net,还有php,r......
  • CSSS属性overflow(溢出) 、CSS定位、JavaScript
    overflow溢出属性overflow(水平和垂直均设置)overflow-x(设置水平方向)overflow-y(设置垂直方向<title>溢出</title><style>div{text-indent:32px;border:5pxsolidred;height:400px;width:400px;/*overflow:hidden;*/......
  • element的el-input,想要输入表单的时候只输入范围数字
    <el-form-itemlabel="通过门限:"prop="passRate"> <el-input placeholder="请输入" type="number" @input="oninput($event)" clearable v-model="addReviewForm.passRate&qu......