原文:DevExpress XtraReports 入门二 创建 data-aware(数据感知) 报表

本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助更多的人不会像我这样浪费时间才写的这篇文章,高手不想的看请路过

本文内容来DevExpress XtraReports帮助文档,如看过类似的请略过。

废话少说 开始正事

一、创建应用程序并添加报表

  1. 启动 MS Visual Studio (2005、2008、或 2010)。
  2. 在 Visual Studio 2005 中新建一个 Windows 应用程序 (或在 Visual Studio 2008 中新建 Windows 窗体应用程序)。
  3. 添加新报表 到应用程序中。

二、创建数据对象并绑定到报表

  1. 在本例中,报表将被绑定到 Northwind 数据库的 Categories 数据表中的数据 (nwind.mdb 文件位于 DevExpress 演示程序 的安装目录中)。为了在设计时刻创建一个数据源并指派到报表,首先选中一个报表。
  2. 打开 属性 窗口 (例如通过按下 F4 键),在报表的 XtraReportBase.DataSource 属性编辑器中,单击 Add Project Data Source(添加项目数据源)... 链接。
  3. 此时将出现一个允许选择要绑定的数据源的对话框。 选中 数据库(Database) 选项。 单击 下一步(Next) 按钮。
  4. 在接下来的页面中,指定 Northwind Traders 数据库(nwind.mdb) 的路径,然后单击 下一步(Next) 按钮。
  5. 同样,在后续的询问是否把连接字符串保存到配置文件的页面中,单击 下一步(Next) 按钮。
  6. 下一个页面允许选择从数据库中获取哪些表。 选中 Categories 表,并且单击 完成(Finish) 按钮。
  7. 在上述步骤完成之后,在报表的设计器中,下列 .NET 组件就可用了: nwindDataSet1 和 categoriesTableAdapter。 报表自动把 XtraReportBase.DataAdapter 和 XtraReportBase.DataSource 属性指派到新建的数据对象。 注意,XtraReportBase.DataMember 属性也自动被指派到 Categories。 在本例中,指定了数据表,报表应迭代此数据表以提供数据。

意思是报表被绑定到了数据。 接下来的步骤展示如何定制报表的布局,以及指定为报表控件提供数据的字段。

三、定制报表带区

  1. 单击报表设计器的左上角,以调用报表的 智能标记。 在智能标记的下拉列表中选择 Edit and Reorder Bands(带区编辑和重新排序)... 选项,以便于编辑报表带区集合。
  2. 在调用的 Report Editor(报表编辑器) 对话框中,移除 PageHeader 带区 (本报表中不需要它),并且添加一个 ReportHeader 带区。 注意, 也可以使用 Report Editor(报表编辑器) 对话框来修改任何其他带区带区的设置 (例如 PageFooter 带区的高度)。

 四、添加数据绑定控件

下列步骤展示了如何设计报表的布局。

  1. 首先,从工具箱中把一个 XRLabel 控件拖放到 ReportHeader 带区 (如同在 课程 1 中操作的那样),把它的 Text 设置为 Fall Catalog。
  2. 然后,创建两个绑定到 CategoryName 和 Description 数据字段的标签。 要这样做,可以把所需要的数据字段从 Field List(字段列表) 树中拖放到报表的 Detail 带区。 在下面的插图中,显示了一个绑定到 Description 数据字段的 XRLabel 控件的创建。
  3. 然后,使用鼠标右键把 Picture 项 (在 Field List 树中) 拖放到 Detail 带区。 这时将会调用如下图所示的上下文菜单。 从列表中选取 XRPictureBox 项,一个 XRPictureBox 控件(被绑定到 Picture 数据字段) 将被创建并添加到报表中。

    要修改图片框控件中的图像的大小显示模式,可以使用它的 XRPictureBox.Sizing 属性。 例如,把此属性值设置为 ZoomImage,则在控件内按比例调整图像的大小 (无裁剪)。
  4. 要把页码添加到每个报表页的底部,则从工具箱中把 XRPageInfo 项从 DX.10.2: Report Controls 标签页拖放到 PageFooter 带区。

    如果有必要的话,可以通过 XRPageInfo.Format 属性来修改在报表中显示的页码的格式。 例如,把此属性值设置为 Page {0} of {1}。
  5. 现在,您拥有了一个数据感知报表。 在 报表资源管理器 窗口中呈现了此报表的结构。 注意, 在“报表资源管理器”树中,以黄色的数据库图标标记已绑定的控件。

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

DevExpress XtraReports 入门二 创建 data-aware(数据感知) 报表的更多相关文章

  1. DevExpress XtraReports 入门三 创建 Master-Detail(主/从) 报表

    原文:DevExpress XtraReports 入门三 创建 Master-Detail(主/从) 报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用 ...

  2. DevExpress XtraReports 入门五 创建交叉表报表

    原文:DevExpress XtraReports 入门五 创建交叉表报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助更多的人不会像我这样浪 ...

  3. DevExpress XtraReports 入门四 创建 Web 报表

    原文:DevExpress XtraReports 入门四 创建 Web 报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助更多的人不会像我这 ...

  4. DevExpress XtraReports 入门一 创建 Hello World 报表

    原文:DevExpress XtraReports 入门一 创建 Hello World 报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助更 ...

  5. [原创]Devexpress XtraReports 系列 7 创建Drill-Down(向下钻取)报表

    昨天发表了Devexpress XtraReports系列第六篇[原创]Devexpress XtraReports 系列 6 创建并排报表,今天我们继续. 今天的主题是创建Drill-Down报表. ...

  6. [原创]Devexpress XtraReports 系列 8 创建Drill-Through报表

    哎,今天公司工作忙了一天,一直没有时间写写东西.所以只能昨天晚上加班写咯.苦逼啊...... 昨天发表了Devexpress XtraReports系列第七篇[原创]Devexpress XtraRe ...

  7. DevExpress XtraReports 入门六 控件以程序方式创建一个 交叉表 报表

    原文:DevExpress XtraReports 入门六 控件以程序方式创建一个 交叉表 报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助 ...

  8. [原创]Devexpress XtraReports 系列 3 创建主从报表

    昨天写了系列的第二篇Devexpress XtraReports 系列 2 创建表格报表 . 今天我们来继续系列 3 创建主从报表 首先我们来看看最后实现的效果.Demo最后附上. 开始吧. 第一步, ...

  9. [原创]Devexpress XtraReports 系列 4 创建多栏报表

    昨天我们完成了 [原创]Devexpress XtraReports 系列 3 创建主从报表 今天我们继续学习新的一种报表模式:多栏报表.(Demo源码,数据库最后附上) 或许很多人会问什么是多栏报表 ...

随机推荐

  1. 超赞的.NET办公软件库

    之前做项目无意中搜到这个站点,一開始以为是国外大牛们的杰作,然后看到联系地址中竟然是四川成都,喔...咱们中国人跟老美.印度人比起来也非常厉害啊. 这个站点一次性提供了word.excel.ppt.p ...

  2. Nubia Z5S 官方4.4 201内測版 内核版本号信息

    从egl推断内核的的版本号: OpenGL ES Shader Compiler Version: E031.24.00.14 Build Date: 04/29/14 Tue Local Branc ...

  3. poj 3311Hie with the Pie

    题意:一个送披萨的,每次送外卖不超过10个地方,给你这些地方之间的时间,求送完外卖回到店里的总时间最小. 解法一: 这个n不大,即使是NP问题也才1E6多一些所以可以dfs():具体的回溯方法结合da ...

  4. Android菜鸟的成长笔记(15)—— Android中的状态保存探究(下)

    原文:Android菜鸟的成长笔记(15)-- Android中的状态保存探究(下) 在上一篇中我们简单了解关于Android中状态保存的过程和原理,这一篇中我们来看一下在系统配置改变的情况下保存数据 ...

  5. Linux 环境下 Lua 安装(转)

    系统环境:CentOS-6.2-x86_64. Lua 是嵌入式脚本语言,应用场景很广泛. 引自官网:Lua is used in many products and projects around ...

  6. 【C++探索之旅】第一部分第三课:第一个C++程序

    内容简介 1.第一部分第三课:第一个C++程序 2.第一部分第四课预告:内存的使用 第一个C++程序 经过上两课之后,我们已经知道了什么是编程,编程的语言,编程的必要软件,C++是什么,我们也安装了适 ...

  7. 构建安全的Xml Web Service系列之wse之证书存储位置

    原文:构建安全的Xml Web Service系列之wse之证书存储位置 我们在前几天对xml web service的安全性提出了一些建议,大家可以通过以下地址访问: 构建安全的Xml Web Se ...

  8. 【Android基础】listview控件的使用(2)-------继承自ListActivity的普通listview

    由于listview在android控件中的重要性,所以android为我们直接封装了一个类ListviewActivity,直接将listview封装在了activity之中,在本篇中,我将介绍在L ...

  9. 终结者单身——setAccessible(true)

    首先看一下"传说"Singleton模式 package go.derek; public class Singleton{ public static int times; pr ...

  10. 【原创】构建高性能ASP.NET站点之三 细节决定成败

    原文:[原创]构建高性能ASP.NET站点之三 细节决定成败 构建高性能ASP.NET站点之三 细节决定成败 前言:曾经就因为一个小小的疏忽,从而导致了服务器崩溃了,后来才发现:原来就是因为一个循环而 ...