报表中有一个概念叫数据区域 (Data Region), 数据区域包括一系列报表控件: 表(table), 矩阵(Matrix),列表(list) 和图表(chart).这些数据区域主要用来绑定数据集, 来显示来自数据集的多行数据。
table 控件.table 控件由许多部分组成, 包括:表头(table header),组头(group header), 详细信息(table detail), 组尾(group footer), 表尾(table footer)等。如图所示:

Table 控件是我们呈现报表的主要方式, 在这里我需要指出的是, 对于任何数据区域控件, 在他的位置是受到一定限制的, 如不能出现在详细信息,页眉和页脚中。同时, 值得注意的是, 当数据区域控件放在Table控件或Matrix空间的表头/表尾或组头/组尾时, 导出的Excel 将" 忽略表/矩阵单元内的数据区域。"
从工具箱中拖出一个Table 控件, 我们首先就是要对表属性进行设置。

将表绑定到数据集, 所有的数据区域控件都需要绑定到数据集才能呈现数据。 其他设置在制作报表的时候就可以很快掌握。
默认情况下, Table控件是没有组的, 可以通过插入组对数据进行分组。如图所示:

Table控件是由许多个Table Cell组成, 而没个Table Cell就是一个Text Box 控件, Text Box控件属于非数据区域控件,不需要绑定数据集。
Matrix 控件
Matrix 控件最主要是呈现交叉表数据(cross table)。由Corner, Dynamic Row Group Header, Dynamic Columns Group Header, Static Group Headers 和 Details Cells 组成, 如图所示:

List 控件
如果报表中不需要像表格这么整齐排列的数据区域, 我们就可以选择List 控件, 在List 控件中数据布局十分灵活, 无论是数据区域控件还是非数据区域空间都可以放置在其中。 如果需要将分组显示的组头信息与详细信息对齐显示,就可以在List控件中放置Table 控件,如图所示:


Chart 控件
Chart 控件主要是通过绑定数据集, 用chart图表的形式呈现数据,入图所示:

我们可以选择各种各样的图表呈现方式, 例如:柱形图, 条形图, 面积图,折线图,饼图等。但是这个控件功能还是太简单了, 不能满足客户许多复杂的需求。 通常, 在报表中加图表我们是通过第三方控件(TeeChart)生成图表图片, 然后再将图片加载到报表中以实现特殊的功能。.Net 3.5以后,我想这个第三方控件已经不需要了, 因为微软已经发布了.NET 3.5框架下的图表控件,如图所示:

ABM, SHO项目中大量使用了图表控件。 以后如果升级到.Net3.5, 强烈推荐微软的图表控件, 开发十分方便, 而且与ajax技术结合, 会带来友好用户体验。