1.隐藏列标题

用DevExpress PivotGrid report 做报表的时候,将字段拖放到报表中后,ColumnArea和DataArea会显示两个标题字段,如下图:

选中交叉表,设置以下属性可以隐藏:

效果如下:

2.自定义排序

做报表的时候,设定ColumnArea的FiledName为sSize,最终呈现的报表是依据sSize排序。而期望的是按照iSizeGroupId,iSizeOrder排序,但iSizeGroupId,iSizeOrder由于不用在报表中呈现,故未将其拖放在报表中.

如何使ColumnArea依据iSizeGroupId,iSizeOrder来排序呢? 使用xrPivotGrid1_CustomFieldSort 事件可以解决这个问题。

具体处理如下:

1.设置sSize的SortMode为Custom。否则xrPivotGrid1_CustomFieldSort 事件不会触发。

2.处理xrPivotGrid1_CustomFieldSort 事件。

注:此处的排序字段也可以在SQL中提前处理好,在SQL中将两个字段合并一个排序字段。

private void pivotGrid1_CustomFieldSort(object sender, HuanSi.XtraReports.UI.PivotGrid.PivotGridCustomFieldSortEventArgs e)

{

//当列为sSize时,才处理自定义排序

if (e.Field.FieldName == "sSize")

{

if (e.Value1 == null || e.Value2 == null) return;

e.Handled = true;

//取iSizeGroupId

string sg1 = e.GetListSourceColumnValue(e.ListSourceRowIndex1, "iSizeGroupId").ToString();

string sg2 = e.GetListSourceColumnValue(e.ListSourceRowIndex2, "iSizeGroupId").ToString();

//取iSizeOrder

string s1 = e.GetListSourceColumnValue(e.ListSourceRowIndex1, "iSizeOrder").ToString();

string s2 = e.GetListSourceColumnValue(e.ListSourceRowIndex2, "iSizeOrder").ToString();

//比较iSizeGroupId

if (string.Compare(sg1, sg2) > 0)

{

e.Result = 1;

}

else if (string.Compare(sg1, sg2) == 0) //iSizeGroupId相等时,再比较iSizeOrder

{

e.Result = string.Compare(s1, s2);

}

else

{

e.Result = -1;

}

}

}

3.保存预览即可达到预期目标

最新文章

  1. 基于SOA分布式架构的dubbo框架基础学习篇
  2. .assetbundle 和.unity3d 好处
  3. Hadoop随笔(二):Hadoop V1到Hadoop V2的主要变化
  4. nodejs: 理解Buffer
  5. 39. Volume Rendering Techniques
  6. 由源码密码文件转转化成keystore
  7. POJ1179Polygon(DP)
  8. 【解决】WordPress FTP连接服务器时出错,请检查设置,WordPress需要访问您网页服务器的权限
  9. js实现谷歌坐标转百度坐标
  10. mysql,mybatis模糊查询
  11. PHP use闭包函数
  12. XXS level8
  13. 聊聊kafka结构
  14. MyBatis基础入门《三》Select查询集合
  15. C#USB设备枚举Kernel32的PInvoke
  16. ikanalyzer分词,计算信息熵排序分词结果
  17. R语言 data.frame 大全
  18. dns over https 简单测试(docker 运行)
  19. Squid安装配置和使用
  20. STL - 容器 - Forward List

热门文章

  1. jQuery入门[3]-事件
  2. mybaits不能出现小于号
  3. EF自动生成的(T4模板) 关联属性元数据修改
  4. 一个C++程序员学习C#语言
  5. MacOS 下端口占用解决办法
  6. tyvj P1209 - 拦截导弹 平面图最小割&&模型转化
  7. 截断WM_SYSCOMMAND的SC_CLOSE命令(VC与Delphi双版本)
  8. git cherry-pick 从其他分支检出指定的commit到当前分支
  9. XP与Win2003下网站配置
  10. 从 3 个 IT 公司里学到的 57 条经验