为Blazor的Telerik UI?下载30天免费试用

网格分组

Grid组件提供对分组的支持。

基础知识

要启用分组,请设置网格的Groupable财产真正的

将列标头拖到组面板,网格将根据该字段的可用值在数据行中创建组。将显示用于分组的列的指示符。组标头显示用于分组的字段的值。

还可以按多个字段分组,后续字段的组将嵌套在它们的父组中。添加组时,可以将其拖动到当前组列表中所需的位置。

若要删除群组设置,单击[x]按钮在组面板上的指示灯上。

若要防止按字段分组,请设置Groupable = " false "在它的柱上。这对于具有唯一值(如id或名称)的字段很有用。

你也可以用聚合对于分组数据。

在Telerik Grid中启用分组

将"Team"和/或"On Vacation"列的列标题拖到顶部的组面板上       @code{公共列表 GridData {get;设置;} protected override void OnInitialized() {GridData = new List();var rand = new Random();For (int I = 0;I < 15;i++) {GridData。添加(new Employee() {EmployeeId = i, Name = "Employee " + i. tostring (), Team = "Team " + i % 3, IsOnLeave = i % 2 == 0});}}公共类Employee {public int EmployeeId {get;设置; } public string Name { get; set; } public string Team { get; set; } public bool IsOnLeave { get; set; } } }

分组在Telerik网格中是如何工作的

Blazor网格分组概述

聚合

网格允许您定义和使用它可以为您计算的聚合。您可以阅读更多关于使用它们的聚合篇文章。

按需加载

网格只能按需加载分组数据。如果您有许多组,并且希望用户首先滚动它们,而不必一次加载所有数据,那么这将非常有用。相反,只有当用户展开组时,才能加载组的子项。此模式也可用于虚拟滚动。您可以在网格-按需负载组数据篇文章。

从代码分组

您可以通过网格从您的代码设置网格分组状态.您可以定义用于分组网格的字段列表和将折叠的组的索引(默认情况下,所有组都展开)。

如果您想设置网格的初始状态,请使用类似的代码段,但是在OnStateInit事件

以编程方式设置分组

@using Telerik.DataSource;set grouping from code          @code {public TelerikGrid Grid {get;设置;} async Task SetGridGroup() {GridState desiredState = new GridState() {GroupDescriptors = new List() {new GroupDescriptor() {Member = "Team", MemberType = typeof(string)}, new GroupDescriptor() {Member = "IsOnLeave", MemberType = typeof(bool), SortDirection = ListSortDirection.}降序//不是必需的,但这个特性还没有通过UI提供}},//选择要折叠的组的索引(它们默认都是展开的)崩溃组= new List() {0},};等待Grid.SetState (desiredState); } public IEnumerable MyData = Enumerable.Range(1, 30).Select(x => new SampleData { Id = x, Name = "name " + x, Team = "team " + x % 5, IsOnLeave = x % 2 == 0, HireDate = DateTime.Now.AddDays(-x).Date }); public class SampleData { public int Id { get; set; } public string Name { get; set; } public string Team { get; set; } public bool IsOnLeave { get; set; } public DateTime HireDate { get; set; } } }

更多的例子

下面的文章和示例项目对实现分组很有帮助:

  • 捕获组事件网格状态可以让你知道它何时发生变化,这样你就可以捕捉到变化的不同方面

  • 服务器分组本文解释了如何实现手动数据源操作,以便您可以将工作卸载到服务器。它提供了如何为此设置网格的概述,以及一些示例——其中一些使用本地数据,并将存储库与使用REST API端点的示例链接起来。

  • 静态组,总是存在的

另请参阅

在本文中
Baidu
map