Winforms 按DevExpress中的显示文本自动筛选

Winforms 按DevExpress中的显示文本自动筛选,winforms,filter,devexpress,Winforms,Filter,Devexpress,我在网格中有一个计算的数字字段。我使用一个自定义编辑器。“过滤器编辑器”(filter editor)中的所有过滤器操作都可以正常工作,但自动过滤器行根据值而不是显示文本进行过滤。我知道我可以将FilterMode设置为DisplayText,但这也用于比较等。因此,我需要将filtermodedisplaytext用于自动筛选,值用于其他所有内容。这可能吗?我在自定义网格类中已经有很多代码,所以可以使用额外的事件处理程序或其他解决方法 编辑 例如,我以欧元存储价格,并根据用户的设置以不同方式显

我在网格中有一个计算的数字字段。我使用一个自定义编辑器。“过滤器编辑器”(filter editor)中的所有过滤器操作都可以正常工作,但自动过滤器行根据值而不是显示文本进行过滤。我知道我可以将FilterMode设置为DisplayText,但这也用于比较等。因此,我需要将filtermodedisplaytext用于自动筛选,值用于其他所有内容。这可能吗?我在自定义网格类中已经有很多代码,所以可以使用额外的事件处理程序或其他解决方法

编辑


例如,我以欧元存储价格,并根据用户的设置以不同方式显示价格。例如,我存储了一个值100,我需要显示“234 abc”。当我设置
FilterMode=DisplayText
时,我无法将实际值与例如
进行比较,我找到了解决问题的方法。。。由于我无法控制如何准确地过滤这些值,而且我在过滤方面遇到了一些问题,所以我将绑定列转换为未绑定列。我删除了进行转换的编辑器,并用自定义函数+显示格式的未绑定表达式替换它们。这不是我一直在寻找的解决方案,但它适用于各种过滤。

您需要提供更多信息。例如,比较。您可以很容易地为其中一些内容抛出自定义事件。了解为什么不能将FilterMode用作DisplayText非常重要。例如,可以将过滤器模式设置为显示自动过滤器的文本。然后,当选择某个对象而不是现在查看显示文本时,您可以获取基础数据源的对象并获取所需的属性。例如,我以欧元存储价格,并根据用户的设置以不同的方式显示它们。例如,我存储了一个值100,我需要显示“234 abc”。当我设置
FilterMode=DisplayText
时,我无法将实际值与例如
进行比较,我对此很熟悉。。。这没用你怎么想象用户过滤?使用典型的自动筛选行?我会建议删除自动过滤。然后在“网格关键点向下”中,您可以跟踪用户的关键点笔划。在keydown事件中,您可以捕获并保存输入的字符。然后,您可以通过分析输入的文本并将其与数据源中所需的任何属性进行比较来应用自定义逻辑。