前天我的一个同学由于打印报表而苦恼,所以就介绍了一下WPF的打印报表,希望能帮助到大家。

展示报表

1. 首先新建项“报表”,选定项目,右击,点击“添加”-》“新建项”-》“报表”

2. 到报表页面,点击“新建”=》“数据集”=》显示数据集页面,选择数据源,数据集名称,按照默认即可。

3. 我就拿我曾经做的一个项目举例,左边可以自动生成参数,也可以自定义参数,将左边工具箱的“表”,拖到右边来,写上标题等等文字,还用到了一个Sum求和的函数,直接使用即可。

4. 然后新建页面WPF窗体,DaYinWindow1.xaml,拖一个windowsFromhost 控件在窗体中,调整页面大小即可,分别设置事件RenderingComplete事件。

5. 后台源码如下

这个上面有两种赋值方式,一种是直接数据绑定数据库,一种是赋值形式的,这两种形式都可以完成数据报表的显示

打印报表

1. 赋值dataGuid ,

2. 获取数据之后,将声明打印类型,直接赋值打印。

直接引用LocalReport函数,将数据收集。

下面有两个函数。

Export函数 设置打印尺寸,并将文件转化成数据流形式

Print函数

实例化 :PrintDocument 类的新实例

调用 PrintPage类,将PrintPage枚举,执行PrintPage类。

PrintPage函数

根据页面调整打印内容

最后经过 Print函数内循环将报表样式打印出来。

谢谢。

C# WPF打印报表的更多相关文章

  1. WPF打印票据

    最近工作的内容是有关于WPF的,整体开发没有什么难度,主要是在打印上因为没有任何经验,犯了一些难,不过还好,解决起来也不是很费劲. WPF打印票据或者是打印普通纸张区别不大,只是说打印票据要把需要打的 ...

  2. 如何在C/S下打印报表

     java应用有不少是C/S模式,在C/S模式下,同样可以调用API接口运算报表.CSReport是C/S模式下的报表控件类,在这个类中可以获得报表的显示面板.获得报表的打印面板.显示报表打印窗口 ...

  3. WPF 打印实例

    原文:WPF 打印实例      在WPF 中可以通过PrintDialog 类方便的实现应用程序打印功能,本文将使用一个简单实例进行演示.首先在VS中编辑一个图形(如下图所示).      将需要打 ...

  4. IIS下打印报表到Excel

    阅读本文之前,请先看上一篇文章<.NET下Excel报表的打印>. 上一篇文章<.NET下Excel报表的打印>介绍了关于报表打印到Excel文件中的方法.若要把项目通过IIS ...

  5. WPF打印原理,自定义打印

    一.基础知识 1.System.Printing命名空间 我们可以先看一下System.Printing命名空间,东西其实很多,功能也非常强大,可以说能够控制打印的每一个细节,曾经对PrintDial ...

  6. WPF 打印控件 无弹框打印。

    WPF中打印用到了 PrintDialog类. 其中设置打印属性的是PrintTicket,管理打印机的是PrintQueue. 实例如下: public class PrintDialogHelpe ...

  7. wpf打印控件 实现分页打印控件功能

    因为 要实现打印 wpf  listbox控件  数据特别多 要打印在 几张纸上    找了几天 都没有找到相关的例子 现在 解决了 在这里和大家分享一下 public void print(Fram ...

  8. [WPF打印]WPF 文档元素(Run TextBlock Paragraph)的文字对齐方式

    最近开发WPF程序,需要打印,用到了FlowDocument(这相当于有了打印模版,而且可以随时修改,真的是挺方便的).可是在输出表格形数据(这种情况恐怕是大多数~)时遇到了点儿麻烦. 由于Table ...

  9. stimulsoft report工具—— 简单的多表连接打印报表例子

    一.用报表工具打印多个表格信息(包括学生表.教师表.班级表) 1.准备打印的数据(用sqlserver) 1)班级表

随机推荐

  1. C#_枚举类型

     C#中的枚举是名/值对的数据类型,下面是自定义的军衔等级的枚举 //定义枚举 enum MilitaryRank { Commander, ArmyCorpCommander, Military ...

  2. linux中利用iptables+geoip过滤指定IP

    1. 前提条件 iptables >= 1.4.5 kernel-devel >= 3.7 2.  安装依赖包  代码如下 复制代码 # yum install gcc gcc-c++ m ...

  3. C#反射技术的简单操作(读取和设置类的属性)

    public class A { public int Property1 { get; set; } } static void Main(){ A aa = new A(); Type type ...

  4. Cocos2d-x场景切换相关函数介绍

    场景切换是通过导演类Director实现的,其中的相关函数如下: runWithScene(Scene* scene).该函数可以运行场景.只能在启动第一个场景时候调用该函数.如果已经有一个场景运行情 ...

  5. UI5_UIAlertView与UIActionSheet

    // // ViewController.h // UI5_UIAlertView与UIActionSheet // // Created by zhangxueming on 15/7/7. // ...

  6. 1. 走进java

    走进java 1.java简介 1.1 java分类: 1.2 开发包JDK 1.3.一处编译,到处运行的特点 2. 配置开发环境 3. java基本语法 3.1关键字和保留字 3.2 标识符命名规则 ...

  7. 一些常用的字符串hash函数

    unsigned int RSHash(const std::string& str) { unsigned int b = 378551; unsigned int a = 63689; u ...

  8. WP开发笔记——阻止Back后退键

    WP7中如何阻止Back后退键的后退事件呢? WP7上提供了物理的Back按键,获取Back物理键按下可以通过PhoneApplicationPage的BackKeyPress事件. 具体实现方法如下 ...

  9. iOS程序的生命周期

    任何程序的生命周期都是指程序加载到程序结束这一段时间. 在iOS应用程序中,通过单击主页面上的图标的方式可以启动一个程序.单击后,系统会显示一个过渡界面,然后调用main()函数来加载程序.从这一刻开 ...

  10. 获取SilverLight.Web项目中路径Uri

    方法一: //获取指定要呈现的xaml内容的包活xaml文件Uri var strFullUrl = Application.Current.Host.Source.AbsoluteUri; if ( ...