ActiveReports 9 新功能:借助目录(TOC)控件为报表添加目录功能
在最新发布的ActiveReports 9报表控件中添加了多项新功能,以帮助你在更短的时间里创建外观绚丽、功能强大的报表系统,本文将重点介绍新增文档目录控件(TOC),通过拖拽操作便可添加报表目录。
目录控件可以帮助用户快速的导航到位于报表中希望查看的数据。可以使用目录控件内嵌报表主体的内容列表用于打印和导出。不像文档结构图只能在报表浏览器中查看不能导出或者打印。
本示例被分解为下面的步骤
- Visual Studio项目中添加ActiveReports
- 连接报表到数据源
- 添加数据集
- 创建报表布局
- 配置目录外观
- 预览报表
当完成此示例后,会获得和下面相似的设计布局和运行时布局。
![]()
(一)添加ActiveReport到Visual Studio项目
1. 创建一个新Visual Studio Windows窗体应用程序项目。
2. 从项目菜单中选择添加新项。
3. 在弹出的添加新项对话框中,选择ActiveReport 9 RDL报表然后在名称中输入ReportsWithToc.rdlx。
4. 点击添加按钮在设计界面中打开一个新的RDL报表。
(二)报表连接数据源
本示例使用Reels数据库中Movies数据表。默认情况下,Reels.mdb文件位于我的文档\ComponentOne Samples\ActiveReports 9\Data文件夹下。
1. 在报表资源管理器中,右键点击数据源节点,然后选择添加数据源选项或者在添加按钮下选择数据源。
![]()
2. 在弹出的报表数据源对话框中,选择常规页,在名称中输入ReportData。
3. 在此页创建Reels数据库的连接。
(三)添加数据集
1. 在报表资源管理器中,右键点击数据源节点然后选择添加数据集选项或者在添加按钮下选择数据集。
2. 在弹出的数据集对话框中,选择常规页然后输入数据集名称MovieCatalog。此名称会作为数据源的子节点出现在报表资源管理器中。
3. 在数据集对话框的查询页中,在查询框中输入下面的SQL。
SELECT Genre.GenreName, Movie.Title, Movie.YearReleased, Movie.UserRating, Movie.Country FROM Genre INNER JOIN (Movie INNER JOIN MovieGenres ON Movie.MovieID = MovieGenres.MovieID) ON Genre.GenreID = MovieGenres.GenreID ORDER BY YearReleased ASC
4. 点击查询文本框右上角的验证数据集图标进行验证。![]()
5. 点击确定关闭对话框。新数据集和查询出来的字段会作为节点出现在报表资源管理器下。
(四)创建报表布局
1. 从工具箱中,拖拽列表(List)控件到设计界面然后在属性窗口中设置如下属性。
属性名称
属性值
DataSetName
MovieCatalog
Location
0.25in, 1.875in
Size
6in, 4in
PageBreakAtStart
True
2. 选中列表控件,在属性窗口中,点击属性对话框链接打开列表对话框。
3. 在详细区域分组页的分组下面设置表达式为=Fields!GenreName.Value。
4. 点击确定关闭对话框。
5. 在报表资源管理器的MovieCatalog数据集中,拖拽GenreName字段到列表数据区域控件上,然后在属性窗口中设置如下属性。
属性名称
属性值
Location
0.25in, 0.375in
Font
Normal, Arial, 12pt, Bold
TextAlign
Center
Size
5.625in, 0.25in
Label
=Fields!GenreName.Value
注:设置控件的Label属性用于在文档结构图中添加控件对应的条目。
6. 从工具箱中拖拽表格(Table)数据区域控件到列表数据区域控件内然后在属性窗口设置下面的属性。
7. 在表格数据区域中,将鼠标置于表格详细数据行上用于显示字段选择装饰器。
8. 点击装饰器显示MovieCatalog数据集中可用的字段列表和添加下面的字段到表格详细数据行中。
9. 此操作会在详细数据行中放置表达式和在相同列的表头行放置静态标签。
10. 使用左侧的行边框选中详细数据行,然后在属性窗口设置如下的属性。
11. 右键点击表格详细数据行左侧边框然后选择插入分组…。
12. 在弹出的表格-分组对话框中常规标签页分组下设置表达式为=Fields!YearReleased.Value。
13. 点击确定关闭对话框。
14. 使用CTRL键和鼠标右键选择表格分组行中的所有文本框控件,然后右键点击选择区域然后选择合并单元格。
15. 选中合并的单元格然后在属性窗口中设置如下属性。
属性名称
属性值
Font
Normal, Arial, 10pt, Bold
HeadingLevel
Heading 2
注: 设置控件的HeadingLevel属性用于在文档结构图中添加控件的相应条目。
TextAlign
Center
Value
="Movies Released in " & Fields !YearReleased.Value
16. 从Visual Studio工具箱中,拖拽一个目录(TableOfContents)控件到设计界面然后在属性窗口设置如下属性
属性名称
属性值
Location
0.25in, 0.5in
Size
6in, 0.875in
BorderStyle
Solid
(五)配置目录外观
1. 选中目录(TableOfContents)控件,选择Levels(集合)属性然后点击出现的省略号按钮。
2. 在弹出的LevelDesigner集合编辑器中,在成员下,使用添加按钮添加Level2到目录。
3. 在成员下,选择Level1和点击LevelDesigner集合编辑器属性网格上方的属性页按钮。
4. 在LevelDesigner集合编辑器中选中成员下的Level2实体然后LevelDesigner集合编辑器属性网格上方的属性页按钮。
5. 在弹出的级别对话框中,设置字体>粗细属性为Bold。
6. 点击确定关闭对话框。
7. 在LevelDesigner集合编辑器中选中成员下的Level2,然后在属性网格中设置Padding属性为20pt, 10pt, 0pt, 0pt和设置DisplayPageNumber属性为False。
8. 点击确定关闭LevelDesigner集合编辑器对话框。
9. 在报表资源管理器中,选中报表节点然后在属性窗口中设置如下属性:
属性名称
属性值
DocumentMap > Source
Labels and Headings
DocumentMap > NumberingStyle
1, 2, 3, 4, 5
在完成模板设计之后,我们得到以下结果:
![]()
(六)预览报表
在设计时点击预览标签页查看报表得到以下结果
![]()
备注:该报表模板可以在安装ActiveReports 9电脑的 C:\Users\用户名\Documents\ComponentOne Samples\ActiveReports 9\Reports Gallery\C#\Reports\RDL Report\Reels\MovieCatalog.rdlx 路径中找到。
关于文档目录控件的更多功能,可以立即下载 ActiveReports 9 进行体验。
更多ActiveReports 9 新功能介绍文章,请点击 ActiveReports V9 进行查看。
ActiveReports 9 新功能:借助目录(TOC)控件为报表添加目录功能的更多相关文章
- C#使用FileSystemWatcher控件实现的文件监控功能示例
本文实例讲述了C#使用FileSystemWatcher控件实现的文件监控功能.分享给大家供大家参考,具体如下: FileSystemWatcher 可以使用FileSystemWatcher组件监视 ...
- Web控件文本框Reset的功能
在前一篇中<怎样实现Web控件文本框Reset的功能>http://www.cnblogs.com/insus/p/4120889.html Insus.NET只实现了文本框的功能.单个或 ...
- Repeater控件使用(含删除,分页功能)
Repeater控件使用(含删除,分页功能) 摘自:http://www.cnblogs.com/alanliu/archive/2008/02/25/914779.html 前臺代碼 <%@ ...
- cocos2dx实现功能强大的RichText控件
转自:http://blog.csdn.net/ljxfblog/article/details/26136773 最近准备做一个聊天系统,开始准备使用cocos2dx的UIRichText控件来显示 ...
- DevExpress.LookUpEdit控件实现自动搜索定位功能 兼使用方法(looUpEdit可编辑)
DevExpress.LookUpEdit 使用方法 设置可手动输入 this.LookUpEdit1.Properties.TextEditStyle = DevExpress.XtraEditor ...
- Android高效率编码-细节,控件,架包,功能,工具,开源汇总,你想要的这里都有
Android高效率编码-细节,控件,架包,功能,工具,开源汇总 其实写博客的初衷也并不是说什么分享技术,毕竟咱还只是个小程序员,最大的目的就是对自我的知识积累,以后万一编码的时候断片了,也可以翻出来 ...
- 详解DevExpress.LookUpEdit控件实现自动搜索定位功能(转)
转载自csdn博客 爱拼才会赢 的博客 地址是详解DevExpress.LookUpEdit控件实现自动搜索定位功能(转)
- 在GridView控件FooterTemplate内添加记录 Ver3
重构此篇<在GridView控件FooterTemplate内添加记录 Ver2> http://www.cnblogs.com/insus/p/3270644.html 这有些缺陷,怎样 ...
- 在GridView控件FooterTemplate内添加记录
在GridView控件FooterTemplate内添加记录,想实现这个功能,有几点要清楚的,这个添加铵钮是在FooterTemplate内,还是在GridView控件外部,位置不同,某些处理逻辑会有 ...
随机推荐
- java 读取文件路径空格和中文的处理
应用部署时,发生文件读取错误,发现是部署路径中含有空格的文件夹名,然后把应用服务器位置迁移了. 从网上找到如下方案:1, TestURL().class.getResource("" ...
- C# 接口的隐式与显示实现
隐式实现的话实现的方法属于实现的类的,可以直接通过类的对象访问,显式实现的话方法是属于接口的,可以看成是寄托在类中实现的,访问这些方法时要先把对象转换成接口对象,然后通过接口对象调用 一般来讲显式实现 ...
- centos 7.0 下触发器乱码的解决
[root@iZ62jhlmmZ ~]# uname -a Linux iZ62jhlmsymZ 3.10.0-123.13.2.el7.x86_64 #1 SMP Thu Dec 18 14:09: ...
- [亿能测试_www.gdtesting.com]测试技术资料网盘共享
[亿能测试_www.gdtesting.com]测试技术资料网盘共享: http://pan.baidu.com/share/home?uk=974090852
- 数据库必会必知 之 SQL四种语言:DDL DML DCL TCL
作者:泥瓦匠 今天群里面讨论,DDL 还是 DML,我这种小白还是总结下他们的区别吧. 1. DDL - Data Definition Language 数据库定义语言:定义数据库的结构. 其主要命 ...
- spark MySQL jar 包
/** * Created by songcl on 2016/6/24. */ import java.sql.DriverManager //val sqlContext = new org.ap ...
- php 5.4 5.5 如何连接 ms sqlserver
https://msdn.microsoft.com/en-us/sqlserver/ff657782.aspx
- 泊松回归(Poisson Regression)
本博客已经迁往http://www.kemaswill.com/, 博客园这边也会继续更新, 欢迎关注~ Linear Regression预测的目标\(Y\)是连续值, Logistic Regre ...
- SLAM中的EKF,UKF,PF原理简介
这是我在知乎上问题写的答案,修改了一下排版,转到博客里. 原问题: 能否简单并且易懂地介绍一下多个基于滤波方法的SLAM算法原理? 目前SLAM后端都开始用优化的方法来做,题主想要了解一下之前基于 ...
- JDK的下载、安装及环境变量的配置
官网下载JDK: www.oracle.com 或者 www.java.sun.com 安装JDK: 双击运行下载的 jdk-8u25-windows-i586.exe即可. 假设安装目录为:D: ...