DevExpress控件使用交流,DevExpress中国社区Dev联系电话 联系电话:023-68661681

XtraReports WinForms入门教程四:创建交叉报表

来源:博客园   发布时间:2012-10-09   浏览:3958次

本教程将引导你如何在设计时使用Detail Report Bands创建一个交叉报表。在进入本文主题前,建议你先查看DevExpress XtraReports报表入门教程三:创建一个Master-Detail主从报表,它会帮助你学习如何添加一个新报表。

准备数据绑定 XRPivotGrid 控件

1、 启动 MS Visual Studio (2005、2008 或 2010),并且新建一个或者打开一个现有的 Windows 窗体应用程序。

2、 添加新报表 到应用程序中。

3、 把 XRPivotGrid 控件从 DX.10.2: Report Controls 工具栏 标签页中拖放到 Detail(细节) 带区。

入门教程,报表,WinForms报表, .NET报表,XtraReports,

4、 单击 xrPivotGrid1 的 智能标记 并在操作列表的 DataSource 下拉菜单中,单击 Add Project Data Source(添加项目数据源)... 链接。

入门教程,报表,WinForms报表, .NET报表,XtraReports,

5、 然后,把控件绑定到 Northwind 示例数据库 (与 XtraReports 安装一起提供的 nwind.mdb 文件) 的 "SalesPerson" 视图。

 入门教程,报表,WinForms报表, .NET报表,XtraReports,

6、 注意,如果 XRPivotGrid 与报表一样使用了相同的数据集,那么要确保在执行这些步骤之后,报表的 XtraReportBase.DataSource 属性被设置为 null (在 Visual Basic 中为 Nothing)。

 入门教程,报表,WinForms报表, .NET报表,XtraReports,

这是必须的,因为如果报表也使用了相同的数据源,那么会导致无效的输出: 报表的细节带区及其包含的透视网格,将被打印与数据源中的行数相同的次数。

指定透视网格的内容

7、 再次通过透视网格的智能标记,调用其操作列表,并单击 Run Designer(运行设计器)... 链接。 

 入门教程,报表,WinForms报表, .NET报表,XtraReports,

8、 在此对话框中, 单击 Retrieve Fields(取回字段) 按钮。 

 入门教程,报表,WinForms报表, .NET报表,XtraReports,

9、 切换到左侧导航栏的 Layout(布局) 功能区。

 入门教程,报表,WinForms报表, .NET报表,XtraReports,

10、 为了指定透视网格的布局,把所需的字段拖放到适当的区域。 例如:

  • 把 CategoryName 和 ProductName 字段拖放到 行字段 区域; 
  • 把 Country 和 SalesPerson 字段拖放到 列字段 区域; 
  • 把 Quantity 和 ExtendedPrice 字段拖放到 数据项 区域。  

 入门教程,报表,WinForms报表, .NET报表,XtraReports,

如果需要,也可以使用此对话框来调整其他字段选项。 当完成时,单击 Apply(应用) 按钮并关闭对话框。

调整透视网格的布局

11、 要在打印预览中按照边框把网格列精确地分开,则可以把报表的 XtraReport.VerticalContentSplitting 属性设置为 Smart。

 入门教程,报表,WinForms报表, .NET报表,XtraReports,

12、如果需要使列宽适合于字段内容,那么可以在 XRPivotGrid 控件的 XRControl.BeforePrint 事件中,以下列方式完成此任务。

using System;
using System.Drawing.Printing;
using DevExpress.XtraReports.UI;
// ...

private void xrPivotGrid1_BeforePrint(object sender, PrintEventArgs e) {
xrPivotGrid1.BestFit(fieldProductName);

查看运行结果

13、现在交叉表报表已经就绪。 运行应用程序,并查看结果。

 入门教程,报表,WinForms报表, .NET报表,XtraReports,

本站文章除注明转载外,均为本站原创或翻译
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
转载请注明:文章转载自:DevExpress控件中文网 [https://www.devexpresscn.com/]
本文地址:https://www.devexpresscn.com/post/367.html
在线
客服
微信
QQ 电话
023-68661681
返回
顶部