基本的分组
RadGridView提供内置分组功能,允许用户轻松地按一列或多列对数据进行分组。
RadGridView的组可以通过编程方式扩展和折叠。这在程序化的分组的话题。
为了对数据进行分组,用户只需将所需的列拖到GridViewGroupPanel的顶部RadGridView.如果RadGridView没有分组,提示显示在GridViewGroupPanel.
图1:拖动列到GridViewGroupPanel
在分组区域中删除选定的标题后,文本消息将被替换为代表所选标题的矩形,数据将被正确地分组。
图2:分组后的RadGridView
要删除分组,只需单击矩形的关闭按钮或将其拖出分组区域。
图3:删除分组
数据可以按多个列分组。要做到这一点,只需将另一列拖到分组区域,数据将根据这两个标准进行分组。要了解关于多列分组的更多信息,请查看多列分组的话题。
GridViewColumn公开一个属性ShowColumnWhenGrouped.它指示了当RadGridView按同一列分组时,该列是否应该可见。默认情况下,它的值为True,列将保持可见。
的2012年第三季度我们引入了一种新的渲染模式RadGridView - Flat。默认的GroupRenderMode是Nested,新的是平.当你设置平面模式时,GridView将显示一行在另一行下面。当网格在多个级别上分组并且有大量数据时,这将导致非常好的性能。您也可以参考分组模式篇文章。
RadGridView还为用户提供了对数据组进行排序的方法。要做到这一点,用户只需单击表示分组列的矩形。默认情况下,在对数据进行分组时,会对分组进行排序提升.当矩形的排序方向为None时,分组将根据它们所包含的数据进行排序。
图4:应用分组时对RadGridView进行排序
按聚合分组排序
你可以下载可运行的项目关于如何从我们的在线SDK存储库中定义聚合函数来排序一个组:SortGroupByAggregate.
根据不同的属性对组进行排序
你可以下载可运行的项目关于如何从我们的在线SDK存储库中根据不同的属性对一个组进行排序:SortGroupByDifferentProperty.
您也可以检查SDK示例浏览器它为探索和执行Telerik XAML SDK存储库中的示例提供了更方便的方法。
GroupMemberPath
每个GridViewColumn都有一个名为GroupMemberPath的属性。此属性可用于在不同于绑定属性的属性上指定要分组的列。
例如,你可以配置列在Name属性上进行分组,尽管绑定属性是Title:
例1:为某列设置GroupMemberPath
分组模式
的2012年第三季度我们引进了一种新的GroupRenderMode的RadGridView。它有两个选项:
嵌套模式:它是默认的,当你在很多层次上进行分组时,它会将GridViewGroupRows嵌套到另一个。当网格在多个级别上分组并且有大量数据时,这可能导致性能较差。表示分组行的可视元素是GridViewGroupRow。
平的模式:该模式只是简单地将行依次显示。当网格在多个级别上分组并且有大量数据时,这将导致非常好的性能。表示分组行的可视元素是GroupHeaderRow。
请注意,当您使用平的模式你应该和他一起工作GroupHeaderRow,而不是GridViewGroupRow.
取消分组时重新排序列
的ShouldReorderColumnsOnUngrouping属性控制列是否DisplayIndex将在用户将组单元格拖到标题单元格时更改。默认值为假—取消分组时,不改变分组前的列的显示索引。当设置为真正的,如果用户将组单元格放到RadGridView的一个标题单元格上,列将为重新排序根据下落位置。
图5:将组单元格拖到标题单元格上
图6:当ShouldReorderColumnsOnUngrouping为True时重新排序的列
禁用分组
的R2 2018可以为控件的所有列禁用分组操作。这可以通过CanUserGroupColumns的属性RadGridView.如果属性设置为假在运行时,如果在它之前应用了分组,用户既不能取消控件的分组,也不能对控件重新排序GroupPanelCells在GroupPanel.
的内置分组有两种方法RadGridView.第一个是atRadGridView通过ShowGroupPanel财产。通过将其设置为假分组区域被隐藏,列标题无处可放。默认值为真正的.
例2:禁用分组
图7:禁用分组的RadGridView
第二种方法是在列级别通过禁用它IsGroupable财产。当设置为假不允许在分组区域中删除列。
例3:对特定列禁用分组
例3:禁用特定列的分组
this.radGridView.Columns(“标题”)。IsGroupable = false;
Me.radGridView.Columns(“标题”)。IsGroupable = False
图8:针对特定列禁用分组的RadGridView
如果一个IValueConverter应用于DataMemberBinding,分组将尊重它,并根据转换后的值创建组名。这样,就可以避免出现重复的组。在过滤的情况下RadGridView控件,另一方面,转换后的值将不受尊重。
事件
当数据进入时,会引发两个事件RadGridView是分组。第一个是分组事件,并在数据分组之前引发该事件。第二点是分组事件,当数据已经分组时将引发该事件。你可以找到更多关于他们的信息在这里.
造型和外观
RadGridView为您提供几种方法来设置内置分组功能的默认外观和外观。您可以操作顶部的分组区域RadGridView。要了解如何做到这一点,请查看修改分组面板的话题。
通过设置,可以轻松更改组行的外观GroupRowStyle财产。要学习如何使用它,请查看样式化组行的话题。
您还可以操作组页脚的视觉外观。只需设置GroupFooterCellStyle的属性GridViewColumn要合适的风格。
您还可以操作组页脚的视觉外观。只是配置GroupFooterCellStyle的属性GridViewColumn要合适的风格。
要了解更多关于组页脚的信息,请查看组页脚的话题。
要学习如何设计它们,请看看样式化组页脚的话题。