具有大型数据集示例的Blazorise Datagrid中的聚合

问题描述

使用大数据集方法时,有没有人有一个带有DataGridAggregates(针对列总计)的Blazorise DataGrid示例?

尝试时没有页脚出现:

<DataGrid TItem="CustomerOrderSummaryDto"
          Data="@PagedResults?.Results"
          ReadData="@OnReadDataAsync"
          TotalItems="@PagedResults?.TotalCount"
          AggregateData="@_counts"
>
    <ChildContent>

        <DataGridColumn TItem="CustomerOrderSummaryDto" Field="@nameof(CustomerOrderSummaryDto.Total)"
                        Caption="Total" />

        <DataGridColumn TItem="CustomerOrderSummaryDto" Field="@nameof(CustomerOrderSummaryDto.OrderRef)"
                        Caption="Order Ref" />

        <DataGridAggregates>
            <DataGridAggregate TItem="CustomerOrderSummaryDto"
                               Field="@nameof( CustomerOrderSummaryDto.Total)"
                               Aggregate="DataGridAggregateType.Sum" displayFormat="{0:C}" />

        </DataGridAggregates>

我将_counts设置为具有一个虚拟条目的虚拟IList。 有关这种交互的示例文档尚不清楚。

解决方法

这是因为您将两列和DataGridAggregates都放在了ChildContent的内部。使用聚合时,必须将它们分成不同的渲染片段。

示例

<DataGrid TItem="Employee">
    <DataGridAggregates>
        // aggregates
    </DataGridAggregates>
    <DataGridColumns>
        // columns
    </DataGridColumns>
</DataGrid>