乐趣区

关于ComponentOne For WinForm 的全新控件 – DataFilter数据切片器(Beta)

概述
数据切片器在电子商务网站上很常见 – 它们可以帮助用户快速过滤所选商品,并且所有过滤选项都可以在一个地方使用,通常包含核心控件类型为:清单,范围栏和单选按钮等。在 ComponentOne For WinForm 最新版 2018V3 中,我们推出了数据过滤器的测试版,可以附加到任何数据感知控件中。
滤镜布局由手风琴面板组成,它为过滤条件提供了扩展 / 折叠选项:

以下就是 ComponentOne For WinForm DataFilter 控件的一些用法。
使用 DataFilter 过滤仪表板中的多个控件
仪表板是 DataFilters 的最佳实践,因为屏幕上的所有信息都可以在一个地方以交互方式进行过滤,从而使用户可以通过选择从数据中获取更多信息。此外,每个视觉所触及之处都可以连接到 DataFilter 以进一步向下钻取。
当产品目录涉及大量有关产品的信息时,数据切片器将会派上用场:

将 DataFilter 控件集成到 FlexGrid 中
在处理 Grid 或 TreeView 等数据控件时,切片器可以是一个有用的交互式过滤工具。当用户需要在多个列上进行过滤时,可以更轻松地将它们全部设置在一个位置:

WinForm DataFilter 的体系结构
DataFilter 使用 C1CollectionView 进行过滤。C1CollectionView 功能类似于 .NET CollectionView,它支持对集合进行过滤、分组和排序。

在系统内部,当数据过滤器根据用户选择创建过滤器表达式时,表达式将传递给 C1CollectionView。C1CollectionView 创建数据源的视图,并根据此表达式应用过滤器。
WinForm DataFilter 的用户界面
数据过滤器控件使用的基本布局是“抽屉效果”。即,每个过滤器项目一个接一个地堆叠,其中每个过滤器项目都可以折叠和展开。

在 DataFilter 中自动选择过滤器类型
该控件为不同类型的数据生成不同的过滤器控件:

对于布尔数据字段,DataFilter 控件生成一个 BoolFilter,由复选框表示。
对于数字数据字段,控件将生成 RangeFilter,它提供范围编辑器和范围滑块以过滤指定范围内的值。
对于文本 / 字符串数据字段,控件生成 ChecklistFilter,允许用户从清单中选择和过滤项目。
对于 DateTime 数据字段,控件生成 DateRangeFilter,它提供范围编辑器和范围滑块以过滤指定日期范围内的值。

异步过滤
异步过滤最常见的使用场景是处理大数据时避免阻塞 UI。DataFilter 控件中有一个名为 ApplyFilterAsync 的内置方法,就可以实现异步过滤。
保存并加载过滤器
DataFilter 控件支持通过 C1DataFilter 类的 SaveFilterExpression 和 LoadFilterExpression 方法进行序列化。SaveFilterExpression 方法将当前过滤器表达式从 C1.Win.DataFilter.C1DataFilter.Filters 集合保存到 XML 文件。LoadFilterExpression 方法从 XML 文件加载保存的过滤器表达式。
设置 WinForm DataFilter 控件的样式
C1DataFilter 类提供了一个 Styles 属性,可用于自定义 DataFilter 控件及其元素的外观。在这里,您可以看到如何编辑按钮、过滤器、复选框、编辑器、标题、过滤器标题和滚动条:

将 ComponentOne 主题应用于 DataFilter
DataFilter 支持 ComponentOne For WinForm 中包含的所有主题,包括最近添加的 Material 和 Office 2016 主题。使用 C1ThemeController 即可在应用程序范围内应用主题:

DataFilter 在许多应用程序中非常有用。请下载试用最新版 ComponentOne Enterprise .NET 控件集,体验产品并分享您的建议和反馈,以帮助我们改进产品体验,并添加在 2019 年 v1 即将发布的 ComponentOne 新版本上!

ComponentOne Enterprise | 下载试用

ComponentOne 是一款专注于企业应用高性能开发的 .NET 全功能控件套包,包含 300 余种控件,支持 7 大平台,涵盖 7 大功能模块。较于市面上其他同类产品,ComponentOne 更加轻盈,功能更加强大,20 多年的开发经验,将为您的应用系统带来更为安全的使用体验。纯中文操作界面,一对一技术支持,厂商级的技术服务,共同造就了这款国际顶级控件套包。
您对 ComponentOne 产品的任何技术问题,都有技术支持工程师提供 1 对 1 专业解答,点击此处即可发帖提问 >> 技术支持论坛

退出移动版