原文:WPF安装打印机驱动后PrintDialog 执行打印事件

WPF可以很好的利用流文档来实现打印预览和PrintDialog 实现打印功能,但是我在这只是写了一个很简单的打印功能演示。

PagePrint布局代码:

d:DesignHeight="350" d:DesignWidth="525" Background="White"
Title="PagePrint"> <Canvas x:Name="PrintArea"> <TextBlock FontSize="10" FontWeight="Bold" Foreground="Black" Name="Spec"
Canvas.Left="165" Canvas.Top="116" Height="13" Width="96">
</TextBlock>
<TextBlock FontSize="10" FontWeight="Bold" Foreground="Black" Name="Name"
Canvas.Left="165" Canvas.Top="96" Height="13" Width="96">
</TextBlock>
<TextBlock FontSize="10" FontWeight="Bold" Foreground="Black" Name="Mfrs"
Canvas.Left="165" Canvas.Top="136" Height="13" Width="96">
</TextBlock> </Canvas>

布局代码只是很简单的放了几个文本框,此PagePrint布局代码的后台:

 //定义全局变量用于要打印的名称,规格以及生厂商
public static String CName = null;
public static String CSpec = null;
public static String CMfrs = null;
public void Pring()
{
String CName = PagePrint.CName;
String CSpec = PagePrint.CSpec;
String CMfrs = PagePrint.CMfrs;
// MessageBox.Show(CName); Name.Text = CName;
Spec.Text = CSpec;
Mfrs.Text = CMfrs;
//打印打印区域
PrintDialog dialog = new PrintDialog();
dialog.PrintVisual(PrintArea, "Test");

因为我在另一个页面点击button按钮可以实现此打印功能,所以只需要在另一个页面添加如下代码:

 //给名称,规格以及生产商的全局变量赋值用于打印
PagePrint.CName = CName;
PagePrint.CSpec = Spec;
PagePrint.CMfrs = Mfrs; //调用函数打印。。
PagePrint PrintprintArea = new PagePrint();
PrintprintArea.Pring();

注意:安装好打印驱动之后要把打印机设置成默认打印机,其次要注意如果打印出来的是空白或者错位,可能是由于布局文件大小,位置等等的原因。

WPF安装打印机驱动后PrintDialog 执行打印事件的更多相关文章

  1. 安装ahci驱动后出现A disk read error occurred如何解决

    注意:因为一般的ghost系统盘都没有ahci驱动,所以,如果用到固态硬盘且想更好的发挥固态硬盘的性能,需要安装ahci驱动,且在bios 中把硬盘模式设置成ahci(否则电脑会蓝屏或进不去系统) 步 ...

  2. Ubuntu 16.04安装NVIDIA驱动后循环登录问题

    问题描述 最近买了两块NVIDIA Titan X Pascal显卡装到了服务器(运行Ubuntu 16.04)上.为了使用这两块GPU显卡,首先需要安装显卡驱动,安装方式为 #安装一个依赖文件,并更 ...

  3. win10系统下安装打印机驱动

    以前安装过一次打印机的驱动,当时是从网上下载的,今天按照以前的方法安装打印机驱动,发现并不能使用,而且并不知道驱动还能自动安装. 首先在系统图标下选择设置-设备和打印机-添加打印机-搜索打印机,如果没 ...

  4. Ubuntu 16.04 安装显卡驱动后循环登录和无法设置分辨率的一种解决方案

    1. 安装环境 电脑:MSI GP63 显卡:GeForce GTX 1070 系统:Ubuntu 16.04 驱动版本:NVIDIA 384.130 2. 循环登录 如果按照这篇文章 Ubuntu ...

  5. 解决T400\T500\W500等安装win10驱动后黑屏问题

    T400.W500.T500等机型有双显卡的机型,在安装WIn10后会在驱动后黑屏,但可见启动画面: 原因:没有对应的双显卡驱动程序,导致系统无法正确识别显卡: 解决方法:开机按F1进入Bios,在显 ...

  6. jQuery在HTML文档加载完毕后自动执行某个事件;

    原来onchange=“fucntionname(parms)”: <select name="country" id="selCountries_{$sn}&qu ...

  7. Ubuntu 14.04 安装nVidia驱动后不能进入图形界面的恢复过程

    想要解决Ubuntu14.04的风扇不停的转的问题.由于ubuntu本身不支持双显卡切换,导致集显独显都处于开启状态,发热量和耗电量居高不下. 1. 安装驱动过程 参考[1]中的步骤,做了如下的操作. ...

  8. 安装php扩展后,执行时找不到扩展 class xxx no found

    当编译安装一个新的php扩展,例如安装redis, 安装后 执行 new Redis(), 如果发现找不到class Redis,可以先检查redis.so文件是否在php的扩展目录下, 如果发现是, ...

  9. 联想的amd电脑,Debian8.8开机后亮度值始终最大,尝试过各种方法,始终无法解决,最后debian8.8在安装开源驱动后,成功调节

    安装ATI显卡驱动(开源)(方法步骤来自Debian WiKi) A.先升级可用的包 # aptitude upgrade B.安装下面3个包 # apt-get install firmware-l ...

随机推荐

  1. thinkphp自动完成、软删除 和时间戳

    thinkphp自动完成.软删除 和时间戳 一.总结 自动完成:没有手动赋值的情况下进行手动处理 软删除:实现假删除,可以进行恢复 时间戳:系统支持自动写入创建和更新的时间戳字段 二.thinkphp ...

  2. 15、NAND FLASH驱动程序框架

    驱动可以参考At91_nand.c,这个比S3c2410.c (drivers\mtd\nand)简单多了 NAND FLASH是一个存储芯片那么: 这样的操作很合理"读地址A的数据,把数据 ...

  3. js进阶 11-24 jquery如何实现选项卡的制作

    js进阶 11-24 jquery如何实现选项卡的制作 一.总结 一句话总结:ul>li做选项卡的选项卡头,多个div做选项卡的内容,点到对应的li,就切换到对应的div,用index()获取l ...

  4. 【24.67%】【codeforces 551C】 GukiZ hates Boxes

    time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...

  5. js判断是否微信客户端

    上周接到个需求,需求是这样的:用户扫一扫二维码会产生一个链接,该链接会向后端发送个请求,返回一个 apk 的下载地址,用户点击下载按钮可以下载此 apk.然后就发生了问题,经过测试,发现用微信扫一扫打 ...

  6. 用Java对CSV文件进行读写操作

    需要jar包:javacsv-2.0.jar 读操作 // 读取csv文件的内容 public static ArrayList<String> readCsv(String filepa ...

  7. [Angular Directive] Combine HostBinding with Services in Angular 2 Directives

    You can change behaviors of element and @Component properties based on services using @HostBinding i ...

  8. CVE­-2014-3566

    https://access.redhat.com/articles/1232123 https://tools.ietf.org/html/draft-ietf-tls-downgrade-scsv ...

  9. Windows 查看硬盘ID(diskpart命令)

    使用diskpart命令Win+R键运行cmd,进入命令行界面:1.diskpart2.list disk 查看有几块硬盘3.select disk 0 选择第一块硬盘4.detail disk 显示 ...

  10. 剔除list中相同的结构体数据

    剔除list中相同的结构体数据,有三个思路:1.两层循环,逐个比较 2.使用set容器来剔除 3.使用unique方法去重 // deduplication.cpp : 定义控制台应用程序的入口点. ...