xtragrid 某个值 查找_XtraPivotGrid根据列(行)的汇总值对列(行)标头进行查找...
本文的示例演示了如何运用CustomFieldValueCells事件找到一个特定的行/列标头,这个行/列标头是根据其列/行的汇总值确定的。本例中查找只包含列汇总值为零的。本例中的列标头是通过事件参数的FindCell方法添加的,然后再通过 Remove 的方法对其删除。
示例代码如下:
C#
using System;
using System.Globalization;
using System.Windows.Forms;
using DevExpress.XtraPivotGrid;
namespace XtraPivotGrid_FindCells {
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
pivotGridControl1.CustomFieldValueCells +=
new PivotCustomFieldValueCellsEventHandler(pivotGrid_CustomFieldValueCells);
}
void Form1_Load(object sender, EventArgs e) {
PivotHelper.FillPivot(pivotGridControl1);
pivotGridControl1.DataSource = PivotHelper.GetDataTable();
pivotGridControl1.BestFit();
}
// Handles the CustomFieldValueCells event to remove columns with
// zero summary values.
protected void pivotGrid_CustomFieldValueCells(object sender,
PivotCustomFieldValueCellsEventArgs e) {
if (pivotGridControl1.DataSource == null) return;
if (radioGroup1.SelectedIndex == 0) return;
// Obtains the first encountered column header whose column
// matches the specified condition, represented by a predicate.
FieldValueCell cell = e.FindCell(true, new Predicate(
// Defines the predicate returning true for columns
// that contain only zero summary values.
delegate(object[] dataCellValues) {
foreach (object value in dataCellValues) {
if (!object.Equals((decimal)0, value))
return false;
}
return true;
}));
// If any column header matches the condition, this column is removed.
if (cell != null) e.Remove(cell);
}
void pivotGridControl1_FieldValueDisplayText(object sender,
PivotFieldDisplayTextEventArgs e) {
if(e.Field == pivotGridControl1.Fields[PivotHelper.Month]) {
e.DisplayText = CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName((int)e.Value);
}
}
void radioGroup1_SelectedIndexChanged(object sender, EventArgs e) {
this.pivotGridControl1.LayoutChanged();
pivotGridControl1.BestFit();
}
}
}
VB
Imports Microsoft.VisualBasic
Imports System
Imports System.Globalization
Imports System.Windows.Forms
Imports DevExpress.XtraPivotGrid
Namespace XtraPivotGrid_FindCells
Partial Public Class Form1
Inherits Form
Public Sub New()
InitializeComponent()
AddHandler pivotGridControl1.CustomFieldValueCells, _
AddressOf pivotGrid_CustomFieldValueCells
End Sub
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
PivotHelper.FillPivot(pivotGridControl1)
pivotGridControl1.DataSource = PivotHelper.GetDataTable()
pivotGridControl1.BestFit()
End Sub
' Handles the CustomFieldValueCells event to remove columns with
' zero summary values.
Protected Sub pivotGrid_CustomFieldValueCells(ByVal sender As Object, _
ByVal e As PivotCustomFieldValueCellsEventArgs)
If pivotGridControl1.DataSource Is Nothing Then
Return
End If
If radioGroup1.SelectedIndex = 0 Then
Return
End If
' Obtains the first encountered column header whose column
' matches the specified condition, represented by a predicate.
Dim cell As FieldValueCell = _
e.FindCell(True, New Predicate(Of Object())(AddressOf AnonymousMethod1))
' If any column header matches the condition, this column is removed.
If cell IsNot Nothing Then
e.Remove(cell)
End If
End Sub
' Defines the predicate returning true for columns
' that contain only zero summary values.
Private Function AnonymousMethod1(ByVal dataCellValues() As Object) As Boolean
For Each value As Object In dataCellValues
If (Not Object.Equals(CDec(0), value)) Then
Return False
End If
Next value
Return True
End Function
Private Sub pivotGridControl1_FieldValueDisplayText(ByVal sender As Object, _
ByVal e As PivotFieldDisplayTextEventArgs) _
Handles pivotGridControl1.FieldValueDisplayText
If Object.Equals(e.Field, pivotGridControl1.Fields(PivotHelper.Month)) Then
e.DisplayText = _
CultureInfo.CurrentCulture.DateTimeFormat.GetMonthName(CInt(Fix(e.Value)))
End If
End Sub
Private Sub radioGroup1_SelectedIndexChanged(ByVal sender As Object, _
ByVal e As EventArgs) _
Handles radioGroup1.SelectedIndexChanged
Me.pivotGridControl1.LayoutChanged()
pivotGridControl1.BestFit()
End Sub
End Class
End Namespace
标签:
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,尊重他人劳动成果
文章转载自:慧都控件网
0
好文不易,鼓励一下吧!
xtragrid 某个值 查找_XtraPivotGrid根据列(行)的汇总值对列(行)标头进行查找...相关推荐
- Excel 查找某值第一次出现和最后一次出现的所在的行,以及对应的某列的值
有时我们需要找出某值第一次出现或者最后一次出现的所在的行,以及对应的某列的值,并且高亮显示该值所在的行 那我们怎样才能实现这个效果呢? 可以来看一下下面这个例子 测试数据是如下: 实现效果如下: 操作 ...
- m行n列最大值和最小值C语言,找数组最值 按如下函数原型编程从键盘输入一个m行n列的二维数...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 找数组最值 按如下函数原型编程从键盘输入一个m行n列的二维数组,然后计算数组中元素的最大值及其所在的行列下标值.其中,m和n的值由用户键盘输入.已知m和n ...
- xtragrid 某个值 查找_二分查找(下):如何快速定位IP对应的省份地址?
通过IP地址来查找IP归属地的功能,不知道你有没有用过?没用过也没关系,你现在可以打开百度,在搜索框里随便输一个IP地址,就会看到它的归属地. 这个功能并不复杂,它是通过维护一个很大的IP地址库来实现 ...
- xtragrid 某个值 查找_Java 经典算法:二分法查找(循环和递归两种方式实现)
一.二分法查找简介 当数组或者集合中存放的元素数量非常多的时候,想要跟踪具体某个元素的位置或者是否存在,常规方式是循环每一个元素直到找到要查找的元素为止.这样的查找方式效率非常低下,这个时候需要使用二 ...
- 修改所有列_哪些数据库是行存储?哪些是列存储?有什么区别?
大多数数据库系统存储一组数据记录,这些记录由表中的列和行组成.字段是列和行的交集:某种类型的单个值. 属于同一列的字段通常具有相同的数据类型.例如,如果我们定义了一个包含用户数据的表,那么所有的用户名 ...
- 哪些数据库是行存储?哪些是列存储?有什么区别?
导读:本文带你了解面向列与面向行的数据库. 作者:Alex Petrov 来源:大数据DT(ID:hzdashuju) 大多数数据库系统存储一组数据记录,这些记录由表中的列和行组成.字段是列和行的交集 ...
- 行存储索引改换成列存储索引_如何使用列存储索引来改善数据仓库登台环境
行存储索引改换成列存储索引 My team and I were recently tasked with refactoring older data marts, particularly tho ...
- 【Shell】awk命令--输出某列,列求和,列求平均值,列最大值,列去重复,取倒列,过滤行,匹配,不匹配,内置变量|定义分隔符|多个分隔符...
目录 awk基本语法 awk输出某几列 awk遍历文件行处理 awk中运行shell命令 方法1:awk 内置函数system 方法2 通过awk print 交给bash awk中运行shell命 ...
- 一篇文章告诉你哪些数据库是行存储?哪些是列存储?有什么区别?
导读:本文带你了解面向列与面向行的数据库. 作者:Alex Petrov 来源:大数据DT(ID:hzdashuju) 大多数数据库系统存储一组数据记录,这些记录由表中的列和行组成.字段是列和行的交集 ...
- 【Shell】awk命令--输出某列,列求和,列求平均值,列最大值,列去重复,取倒列,过滤行,匹配,不匹配,内置变量|定义分隔符|多个分隔符
目录 awk基本语法 awk输出某几列 awk遍历文件行处理 awk中运行shell命令 方法1:awk 内置函数system 方法2 通过awk print 交给bash awk中运行shell命 ...
最新文章
- CCNP路由实验---3、人工汇总EIGRP路由
- 计算机动画课程设计,计算机动画课程设计.doc
- 关于PHP安装扩展pdo_odbc
- wc命令统计文件数据数量信息
- HTCondor运行Java文件
- idea在Sonar中点击exclude后恢复
- 爬虫之Requests库入门
- js:数据结构笔记10--图和图算法
- 文件对应的Content-Type类型
- 机器人手眼标定原理介绍(含详细推导过程)使用Tsai-Lenz算法
- Linux查 ssh端口号
- 自动驾驶仿真相关调研
- 手把手教你理解SURF算法的全部过程
- android微信打不开怎么办,微信打不开怎么回事 微信打不开怎么办
- 项目管理的七个工作法则
- c语言:用牛顿迭代法求方程在1.5附近的根:2x^3-4x^2+3x-6=0.
- 漫谈 | 据说搞区块链的人都觉得自己是“上帝
- 万维钢解读,从数学上解释为什么绝大多数投资者都会输给市场?最可能值,远远小于平均值...
- skynet httpc 并发发送消息崩溃问题
- Failed to execute goal org.apache.maven.plugins:maven-checkstyle-plugin:2.17:check (checkstyle-vali