您的位置 首页 > 数码极客

用vs2015如何实现报表

最近在使用C#做项目的时候需要打印一个票单,自己使用GUI绘制的话比较复杂,灵活性,扩展性都很差,想到使用报表解决这个似乎比较简单,起先准备使用水晶报表,因为资料比较多,比较好上手,但是详细了解水晶报表以后为其功能强大震撼了,但同时也带来的问题是模块对我需求来说比较臃肿,我仅仅需要一个设计一个表单打印而已,然后了解到微软自带的有报表模块,但是网上资料比较少,研究了一下发现对简单的需求场景来说简直是程序猿的福利,使用起来也很简单,开发迅速,上手容易,下面引用MSDN官方文档做一下简单解析说明,欢迎大家交流,后续抽空会发开发的一些使用教程

注意:如果你的工具箱找不到ReportViewer 控件,你需要添加dll工具到工具箱面板,在工具箱点右键,点“选择项”,找到Micro,选择对应的版本即可,不知道选哪个版本上网查询一下,vs2015装完附带的有9.0的版本,但是在vs2015却使用不了,2015必须使用12.0的版本,这个版本的dll可以自己上网下载,或者使用nuget下载安装

整体的开发流程为:

1、建设一个类和一个类集合存数据;

2、新建一个报表模板;

3、给报表添加数据源;

4、将报表要展示字段绑定到报表模板

5、Windows窗口报表显示控件绑定报表模板

6、将数据集合绑定到报表数据源实例

创建新的 Windows 窗体应用程序项目

  1. 在“文件”菜单上,指向“新建”,然后选择“项目”。

  2. 在“新建项目”对话框中的“已安装的模板”窗格中,选择“Visual C#”,然后选择“Windows 窗体应用程序”模板。 根据 Visual Studio 中的启动设置,“C#”节点可能会显示在“其他语言”下。

  3. 键入项目的名称“BusinessObject”,并单击“确定”。

创建要用作数据源的业务对象

  1. 从“项目”菜单中选择“添加新项”。

  2. 在“添加新项”对话框中,选择“类”,键入文件名“Bu”,然后单击“添加”。

    新文件将添加到项目并且在 Visual Studio 中自动打开。

  3. 将 Bu 的默认代码替换为以下代码:

4. 从“项目”菜单中,选择“生成解决方案”。 这将为对象创建一个程序集,您稍后会将此程序集用作报表的数据源。

对应类

使用报表向导向项目添加报表

  1. 从“项目”菜单中选择“添加新项”。

  2. 在“添加新项”对话框中,选择“报表向导”。 为报表键入名称,并单击“添加”。

    这将启动报表向导中的数据源配置向导。

  3. 在“选择数据源类型”页上,选择“对象”,并单击“下一步”。

  4. 在“选择数据对象”页中的“BusinessObject”下,展开类的层次结构,直到在列表中看到“产品”。 选择“产品”,再单击“完成”。

    现在已返回到“报表向导”。 请注意,新数据源对象已添加到“解决方案资源管理器”中的项目中。

  5. 在“数据集属性”页中的“数据源”框中,确认选中“全局”。

  6. 在“可用数据集”框中,确认选中“产品”。

  7. 单击“下一步”。

  8. 在“排列字段”页中,执行以下操作:

  1. 将“名称”从“可用字段”拖到“行组”框。

  2. 将“价格”从“可用字段”拖到“值”框。

  1. 单击两次“下一步”,然后单击“完成”。

    这将创建 .rdlc 文件并在报表设计器中将其打开。 所创建的 tablix 会立即显示在设计图面中。

  2. 保存 .rdlc 文件。

向报表中添加 ReportViewer 控件

  1. 在解决方案资源管理器的“设计”视图中打开该 Windows 窗体。 默认情况下,窗体名称为“Form1.cs”。

  2. 在“报表”组中,将“ReportViewer”图标从“工具箱”拖到窗体上。

  3. 在 ReportViewer 控件中,通过单击右上角的智能标记标志符号打开智能标记面板。

  4. 在“选择报表”列表中,选择刚才设计的报表。 默认情况下,名称为 Re。 请注意,将为报表中使用的每个对象数据源相应自动创建名为ProductBindingSource 的 BindingSource 对象。

  5. 在打开的智能标记面板中,选择“在父容器中停靠”。

为 BindingSource 对象提供数据源实例

  1. 在解决方案资源管理器中,右键单击“Form1.cs”,然后选择“查看代码”。

  2. 在“Form1.cs”的分部类定义中,在构造函数前添加以下代码作为第一行。

    //生成数据存放到类的集合中 private Merchant m_merchant = new Merchant();
  3. 在“Form1_Load()”方法中,在 RefreshReport 前添加下列代码作为第一行:

  4. //将类集合数据添加到报表数据 = m_merc();

关于C#开发有什么问题可以留言

msdn官方使用文档:

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“用vs2015如何实现报表”边界阅读