DevExpress XtraReports 入门三 创建 Master-Detail(主/从) 报表
原文:DevExpress XtraReports 入门三 创建 Master-Detail(主/从) 报表
本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助更多的人不会像我这样浪费时间才写的这篇文章,高手不想的看请路过
本文内容来DevExpress XtraReports帮助文档,如看过类似的请略过。
废话少说 开始正事
一、添加从表
- 启动 MS Visual Studio (2005、2008、或 2010)。
- 打开有数据感知报表的 Windows 应用程序,此应用程序已经在本指南的 课程 2 中被创建。
- 此报表已经被绑定到 Northwind 数据库的 Categories 表。 要创建主/从报表,则需要把 Products 表添加到 nwindDataSet 的架构中。 要执行此操作,则在设计器底部的组件面板中,使用鼠标右键单击 nwindDataSet1,并且选择 Edit in DataSet Designer(在数据集设计器中编辑)... 上下文菜单项。

- 当 nwindDataSet.xsd 设计器被打开时,展开 Server Explorer(服务器资源管理器) 窗格,在其中显示了当前在 Visual Studio 中可用的所有数据连接。 要达到此目的,则在 视图 菜单中选中 服务器资源管理器 菜单项,或者按下 Ctrl+Alt+S 组合键。
- 在可用的 Data Connections(数据连接) 列表中,找到指向 nwind.mdb 文件的连接,然后选中 Products 数据表,并把它拖放到数据集设计器中。 这样将把 Products 表添加到 nwindDataSet 中。

- 当 Products 表被添加到数据集架构中时,Visual Studio 自动创建适当的在 Categories 和 Products 表之间的主/从关系。 为了应用这些更改,请单击工具栏上的 保存 按钮。

二、创建从报表
- 切换到报表设计器,并且使用鼠标右键单击报表,以调用其 上下文菜单。 在此菜单中选择 Insert Detail Report/CategoriesProducts 菜单项来添加新的 从报表。 在本例中,从报表的 DataSource 属性值被设置为 nwindDataSet1; DataAdapter 属性 - productsTableAdapter ; DataMember 属性 - Categories.CategoriesProducts。

- 使用鼠标右键单击从报表,并且选择 Insert Band/Group Header 上下文菜单项。 这样将把 GroupHeaderBand 添加到从报表中。

- 为了使从报表的外观更专业,我们把 GroupBand.RepeatEveryPage 属性设置为 true,并把 GroupHeaderBand.GroupUnion 属性设置为 WithFirstDetail。 如果这些设置被应用,那么在每个有分组的报表页中,Group Header 带区都将被重复,并且将以这样的一种方式选择其位置: 总是在下方打印至少一个 Detail 带区。

三、定制从报表的布局
- 把两个 XRTable 控件添加到从报表的 Group Header 和 Detail 带区。 要这样做,则打开 DX.10.2: Reporting 工具箱标签页,并选择 XRTable。 然后在 GroupHeader 带区的内容区中按下鼠标左键并且向下方拖动,直至鼠标指针跨入 Detail 带区时释放鼠标左键。
- 注意,可以把单元格添加到这些表中、调整它们的大小、以及设置单元格中显示文本的字体。 例如,把第二个表的 XRControl.Borders 属性值设置为 Left, Right, Bottom,从而避免重复表行之间出现双边线。
- 然后,把第二个表的单元格绑定到所需的数据字段。

… 在第一个表的单元格中输入列名称,以获得下列布局。

四、查看运行结果
现在主/从报表已经就绪。 切换到 Preview 标签页 并查看结果。

DevExpress XtraReports 入门三 创建 Master-Detail(主/从) 报表的更多相关文章
- DevExpress XtraReports 入门五 创建交叉表报表
原文:DevExpress XtraReports 入门五 创建交叉表报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助更多的人不会像我这样浪 ...
- DevExpress XtraReports 入门二 创建 data-aware(数据感知) 报表
原文:DevExpress XtraReports 入门二 创建 data-aware(数据感知) 报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的, ...
- DevExpress XtraReports 入门一 创建 Hello World 报表
原文:DevExpress XtraReports 入门一 创建 Hello World 报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助更 ...
- DevExpress XtraReports 入门四 创建 Web 报表
原文:DevExpress XtraReports 入门四 创建 Web 报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助更多的人不会像我这 ...
- [原创]Devexpress XtraReports 系列 7 创建Drill-Down(向下钻取)报表
昨天发表了Devexpress XtraReports系列第六篇[原创]Devexpress XtraReports 系列 6 创建并排报表,今天我们继续. 今天的主题是创建Drill-Down报表. ...
- [原创]Devexpress XtraReports 系列 8 创建Drill-Through报表
哎,今天公司工作忙了一天,一直没有时间写写东西.所以只能昨天晚上加班写咯.苦逼啊...... 昨天发表了Devexpress XtraReports系列第七篇[原创]Devexpress XtraRe ...
- DevExpress XtraReports 入门六 控件以程序方式创建一个 交叉表 报表
原文:DevExpress XtraReports 入门六 控件以程序方式创建一个 交叉表 报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助 ...
- [原创]Devexpress XtraReports 系列 3 创建主从报表
昨天写了系列的第二篇Devexpress XtraReports 系列 2 创建表格报表 . 今天我们来继续系列 3 创建主从报表 首先我们来看看最后实现的效果.Demo最后附上. 开始吧. 第一步, ...
- [原创]Devexpress XtraReports 系列 4 创建多栏报表
昨天我们完成了 [原创]Devexpress XtraReports 系列 3 创建主从报表 今天我们继续学习新的一种报表模式:多栏报表.(Demo源码,数据库最后附上) 或许很多人会问什么是多栏报表 ...
随机推荐
- [C++]四种方式求解最大子序列求和问题
问题 给定整数: A1,A2,-,An,求∑jk=iAk 的最大值(为方便起见,假设全部的整数均为负数,则最大子序列和为0) 比如 对于输入:-2,11,-4,13,-5,-2,答案为20,即从A2到 ...
- js jquery版本号 金额千分之一转换功能(非规范,高效率)
没想到js将没有 金额千分之一格处理器类型(例子:1,234.01 这种格公式).互联网搜索圈,我们使用的是常规方式.常规效率受宠若惊啊.和资源密集型,速度慢(虽然处理起来会很直观). 因此专门写一个 ...
- [LeetCode107]Binary Tree Level Order Traversal II 二叉树层次遍历
题目: Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, from ...
- RH033读书笔记(10)-Lab 11 Process Control
Lab 11 Process Control Sequence 1: Job Control 1. [student@stationX ~]$ su - 2. Begin some jobs in t ...
- cocos2dx3.1-lua移植android流程
我很懒惰,写这篇博客只是为了能够转出后,当忘记查看,所以我写了下面非常简单的内容.假设完全没有经验的学生请找另一篇文章 一.环境配置(win7): 用户变量如下面: ANDROID_SDK_ROOT: ...
- Post数据到 https异常:基础连接已经关闭: 连接被意外关闭 解决办法
POST数据到HTTPS站点的时候需要设置ServicePointManager类的ServerCertificateValidationCallback属性,并且在POST到https://pass ...
- Build制作模型
#include <iostream> using namespace std; //不知道为什么事实上非常好解释的东西在网上搞的人晕头转向的,下面是我的理解. //一个基类衍生出很多详细 ...
- 【剑指offer学习】求和为定值的两个数(拓展)
接着上面一篇文章: http://blog.csdn.net/u013476464/article/details/40651451 接下来我们拓展一下题目,如果数组是乱序的,并且规定数组中的元素所有 ...
- 《Hadoop》对于高级编程Hadoop实现构建企业级安全解决方案
本章小结 ● 理解企业级应用的安全顾虑 ● 理解Hadoop尚未为企业级应用提供的安全机制 ● 考察用于构建企业级安全解决方式的方法 第10章讨论了Hadoop安全性以及Hadoop ...
- KindEditor参数具体解释
width 编辑器的宽度.能够设置px或%.比textarea输入框样式表宽度优先度高. 数据类型: String 默认值: textarea输入框的宽度 演示样例: K.create('#id', ...