DevExpress 中的 DisplayText 自动过滤
Autofilter by DisplayText in DevExpress
我在网格中有一个计算数字字段。我为此使用自定义编辑器。过滤器编辑器中的所有过滤器操作都运行良好,但自动过滤器行根据值而不是显示文本进行过滤。我知道我可以将 FilterMode 设置为 DisplayText 但这也用于比较等。因此,我需要将 FilterMode DisplayText 用于自动过滤器,将 Value 用于其他所有内容。这可能吗?我在自定义网格中已经有很多代码 class,所以可以有一个额外的事件处理程序或其他解决方法。
编辑
我存储例如以欧元为单位的价格,我会根据用户的设置以不同方式显示它们。所以,例如我已经存储了一个值 100,我需要显示“234 abc”。当我设置 FilterMode=DisplayText
时,我无法将实际值与例如>
和 <
。目前,我使用 FilterMode=Value
并在过滤器编辑器中转换显示值以进行过滤。唯一的问题是 StartsWith
即自动过滤器和 =
因为四舍五入。我该如何解决?
我找到了解决我的问题的方法...因为我无法控制值的过滤方式,而且我在过滤方面遇到了一些问题,所以我将绑定列转换为未绑定列。我删除了进行转换的编辑器,并将它们替换为具有自定义函数 + 显示格式的未绑定表达式。不是我正在寻找的解决方案,但它适用于所有类型的过滤。
我在网格中有一个计算数字字段。我为此使用自定义编辑器。过滤器编辑器中的所有过滤器操作都运行良好,但自动过滤器行根据值而不是显示文本进行过滤。我知道我可以将 FilterMode 设置为 DisplayText 但这也用于比较等。因此,我需要将 FilterMode DisplayText 用于自动过滤器,将 Value 用于其他所有内容。这可能吗?我在自定义网格中已经有很多代码 class,所以可以有一个额外的事件处理程序或其他解决方法。
编辑
我存储例如以欧元为单位的价格,我会根据用户的设置以不同方式显示它们。所以,例如我已经存储了一个值 100,我需要显示“234 abc”。当我设置 FilterMode=DisplayText
时,我无法将实际值与例如>
和 <
。目前,我使用 FilterMode=Value
并在过滤器编辑器中转换显示值以进行过滤。唯一的问题是 StartsWith
即自动过滤器和 =
因为四舍五入。我该如何解决?
我找到了解决我的问题的方法...因为我无法控制值的过滤方式,而且我在过滤方面遇到了一些问题,所以我将绑定列转换为未绑定列。我删除了进行转换的编辑器,并将它们替换为具有自定义函数 + 显示格式的未绑定表达式。不是我正在寻找的解决方案,但它适用于所有类型的过滤。