wpf devexpress数据统计

GridControl允许显示总结信息关于单个数据行分组。例如,你可以显示记录数量,最小和最大值。这个统计信息可以叫做数据统计。

创建统计

GridControl 支持总结和分组统计:

总结统计 - 一个总结函数值计算对于所有列和视图显示统计面板和固定统计面板。

分组统计-一个统计函数值计算对于所有列和分组显示数据列

GridSummaryItem 对象显示数据统计。可以指定字段对于全部值统计计算,统计函数,和值统计显示。GridControl.TotalSummary 集合存储总结统计,GridControl.GroupSummary集合存储分组统计。

在视图模型创建统计

可以在视图模型中定义总结和分组统计在GridControl显示。

查阅帮助信息:How to: Bind the Grid to Total and Group Summaries.

在数据更新中重新计算统计

GridControl更新统计值在你提交和编辑列变更给数据源。调用DataViewBase.CommitEditing 方法在GridViewBase.CellValueChanged事件处理中更新统计值在每一次单元格编辑后:

cs 复制代码
private void view_CellValueChanged(object sender, DevExpress.Xpf.Grid.CellValueChangedEventArgs e) {
    view.CommitEditing();
}

GridControl没有更新统计,如果你直接修改控件数据源(没有通过控件UI)。设置DataControlBase.AllowLiveDataShaping 属性为true使控件重新计算统计当数据源变更。

优化统计重新计算

GridControl可以使用优化统计重新计算机制,当需要处理每次变更的更改时。作为结果,每次必须更新统计值不依赖记录的总数。

设置GridControl.OptimizeSummaryCalculation 属性为true 启动优化统计重新计算。GridControl 应该束缚ObservableCollection或者 ChunkList<T> 当这些内容实现了INotifyPropertyChanged和INotifyPropertyChanging 接口。GridControl 不能优化性能和Custom Summaries 重新计算对于 Unbound Columns。

指定的数据统计

GridControl可以计算统计对于选择的列和单元格:

设置 DataViewBase.SummaryCalculationMode 属性到SelectedRow / Mixed到使GridControl计算所有统计和视图对于选择的列。

cs 复制代码
<dxg:GridControl x:Name="grid" SelectionMode="Row">
    <dxg:GridControl.View>
        <dxg:TableView x:Name="view"
                       SummaryCalculationMode="SelectedRows"
                       TotalSummaryPosition="Bottom" />
    </dxg:GridControl.View>
    <dxg:GridControl.TotalSummary>
        <dxg:GridSummaryItem FieldName="Total" SummaryType="Sum" DisplayFormat="Sum={0:$0.00}" />
    </dxg:GridControl.TotalSummary>
    <dxg:GridControl.GroupSummary>
        <dxg:GridSummaryItem FieldName="Total" SummaryType="Sum" DisplayFormat="Sum={0:$0.00}" />
    </dxg:GridControl.GroupSummary>
</dxg:GridControl> 

你可以创建单个统计对于所有列和单元格和设置它的 SummaryItemBase.CalculationMode 属性到 SelectedRows/Mixed:

cs 复制代码
<dxg:GridControl x:Name="grid" SelectionMode="Row">
    <!-- -->
    <dxg:GridControl.View>
        <dxg:TableView x:Name="view" TotalSummaryPosition="Bottom" />
    </dxg:GridControl.View>
    <dxg:GridControl.TotalSummary>
        <!-- The first summary against selected rows -->
        <dxg:GridSummaryItem FieldName="Total" SummaryType="Sum"
                             DisplayFormat="Selection Total=${0:N}" CalculationMode="SelectedRows" />
        <!-- The second summary against all rows -->
        <dxg:GridSummaryItem FieldName="Total" SummaryType="Sum" 
                             DisplayFormat="Total=${0:N}" />
    </dxg:GridControl.TotalSummary>
    <dxg:GridControl.GroupSummary>
        <dxg:GridSummaryItem FieldName="Total" SummaryType="Sum" 
                             DisplayFormat="Grand Total=${0:N}" CalculationMode="SelectedRows" />
    </dxg:GridControl.GroupSummary>
</dxg:GridControl> 
相关推荐
暖馒7 小时前
Modbus应用层协议的深度剖析
网络·网络协议·c#·wpf·智能硬件
R1nG8639 小时前
HCCL vs NCCL代码级对比 hccl/algorithms/ vs nccl/src/collectives/ Ring算法实现差异
wpf·cann
风指引着方向12 小时前
归约操作优化:ops-math 的 Sum/Mean/Max 实现
人工智能·wpf
听麟15 小时前
HarmonyOS 6.0+ 跨端智慧政务服务平台开发实战:多端协同办理与电子证照管理落地
笔记·华为·wpf·音视频·harmonyos·政务
听麟19 小时前
HarmonyOS 6.0+ APP AR文旅导览系统开发实战:空间定位与文物交互落地
人工智能·深度学习·华为·ar·wpf·harmonyos
聆风吟º1 天前
CANN hccl 深度解析:异构计算集群通信库的跨节点通信与资源管控实现逻辑
人工智能·wpf·transformer·cann
无心水2 天前
分布式定时任务与SELECT FOR UPDATE:从致命陷阱到优雅解决方案(实战案例+架构演进)
服务器·人工智能·分布式·后端·spring·架构·wpf
LZL_SQ2 天前
HCCL测试框架中AllReduce边界条件测试设计深度剖析
wpf·cann
User_芊芊君子3 天前
【分布式训练】CANN SHMEM跨设备内存通信库:构建高效多机多卡训练的关键组件
分布式·深度学习·神经网络·wpf
就是有点傻4 天前
WPF按钮走马灯效果
wpf