原文:DevExpress XtraReports 入门五 创建交叉表报表
本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助更多的人不会像我这样浪费时间才写的这篇文章,高手不想的看请路过
本文内容来DevExpress XtraReports帮助文档,如看过类似的请略过。
废话少说 开始正事
一、准备数据绑定 XRPivotGrid 控件
- 启动 MS Visual Studio (2005、2008 或 2010),并且新建一个或者打开一个现有的 Windows 窗体应用程序。
- 添加新报表 到应用程序中。
- 把 XRPivotGrid 控件从 DX.10.2: Report Controls 工具栏 标签页中拖放到 Detail(细节) 带区。
- 单击 xrPivotGrid1 的 智能标记 并在操作列表的 DataSource 下拉菜单中,单击 Add Project Data Source(添加项目数据源)... 链接。
- 然后,把控件绑定到 Northwind 示例数据库 (与 XtraReports 安装一起提供的 nwind.mdb 文件) 的 "SalesPerson" 视图。
注意
如果 XRPivotGrid 与报表一样使用了相同的数据集,那么要确保在执行这些步骤之后,报表的 XtraReportBase.DataSource 属性被设置为 null (在 Visual Basic 中为 Nothing)。
这是必须的,因为如果报表也使用了相同的数据源,那么会导致无效的输出: 报表的细节带区及其包含的透视网格,将被打印与数据源中的行数相同的次数。
二、指定透视网格的内容
- 再次通过透视网格的智能标记,调用其操作列表,并单击 Run Designer(运行设计器)... 链接。
- 在此对话框中, 单击 Retrieve Fields(取回字段) 按钮。
- 切换到左侧导航栏的 Layout(布局) 功能区。
- 为了指定透视网格的布局,把所需的字段拖放到适当的区域。 例如:
- 把 CategoryName 和 ProductName 字段拖放到 行字段 区域;
- 把 Country 和 SalesPerson 字段拖放到 列字段 区域;
- 把 Quantity 和 ExtendedPrice 字段拖放到 数据项 区域。
如果需要,也可以使用此对话框来调整其他字段选项。 当完成时,单击 Apply(应用) 按钮并关闭对话框。
三、调整透视网格的布局
- 要在打印预览中按照边框把网格列精确地分开,则可以把报表的 XtraReport.VerticalContentSplitting 属性设置为 Smart。
- 如果需要使列宽适合于字段内容,那么可以在 XRPivotGrid 控件的 XRControl.BeforePrint 事件中,以下列方式完成此任务。
using System;
using System.Drawing.Printing;
using DevExpress.XtraReports.UI;
// ... private void xrPivotGrid1_BeforePrint(object sender, PrintEventArgs e) {
xrPivotGrid1.BestFit(fieldProductName);
四、查看运行结果
- 现在交叉表报表已经就绪。 运行应用程序,并查看结果。