手机
当前位置:查字典教程网 >编程开发 >C#教程 >C#打印类PrintDocument、PrintDialog、PrintPreviewDialog使用示例
C#打印类PrintDocument、PrintDialog、PrintPreviewDialog使用示例
摘要:1.使用PrintDocument进行打印usingSystem;usingSystem.Drawing;usingSystem.Drawi...

1.使用PrintDocument进行打印

using System; using System.Drawing; using System.Drawing.Printing; using System.Windows.Forms; namespace PrintTest { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { //实例化打印对象 PrintDocument printDocument1 = new PrintDocument(); //设置打印用的纸张,当设置为Custom的时候,可以自定义纸张的大小 printDocument1.DefaultPageSettings.PaperSize = new PaperSize("Custum", 500, 500); //注册PrintPage事件,打印每一页时会触发该事件 printDocument1.PrintPage += new PrintPageEventHandler(this.PrintDocument_PrintPage); //开始打印 printDocument1.Print(); } private void PrintDocument_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) { //设置打印内容及其字体,颜色和位置 e.Graphics.DrawString("Hello World!", new Font(new FontFamily("黑体"), 24), System.Drawing.Brushes.Red, 50, 50); } } }

2.使用PrintDialog增加打印对话框

using System; using System.Drawing; using System.Drawing.Printing; using System.Windows.Forms; namespace PrintTest { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { //实例化打印对象 PrintDocument printDocument1 = new PrintDocument(); //设置打印用的纸张,当设置为Custom的时候,可以自定义纸张的大小 printDocument1.DefaultPageSettings.PaperSize = new PaperSize("Custum", 500, 500); //注册PrintPage事件,打印每一页时会触发该事件 printDocument1.PrintPage += new PrintPageEventHandler(this.PrintDocument_PrintPage); //初始化打印对话框对象 PrintDialog printDialog1 = new PrintDialog(); //将PrintDialog.UseEXDialog属性设置为True,才可显示出打印对话框 printDialog1.UseEXDialog = true; //将printDocument1对象赋值给打印对话框的Document属性 printDialog1.Document = printDocument1; //打开打印对话框 DialogResult result = printDialog1.ShowDialog(); if (result == DialogResult.OK) printDocument1.Print();//开始打印 } private void PrintDocument_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) { //设置打印内容及其字体,颜色和位置 e.Graphics.DrawString("Hello World!", new Font(new FontFamily("黑体"), 24), System.Drawing.Brushes.Red, 50, 50); } } }

打印对话框如下图所示。

C#打印类PrintDocument、PrintDialog、PrintPreviewDialog使用示例1

3.使用PrintPreviewDialog增加打印预览对话框

using System; using System.Drawing; using System.Drawing.Printing; using System.Windows.Forms; namespace PrintTest { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { //实例化打印对象 PrintDocument printDocument1 = new PrintDocument(); //设置打印用的纸张,当设置为Custom的时候,可以自定义纸张的大小 printDocument1.DefaultPageSettings.PaperSize = new PaperSize("Custum", 500, 500); //注册PrintPage事件,打印每一页时会触发该事件 printDocument1.PrintPage += new PrintPageEventHandler(this.PrintDocument_PrintPage); //初始化打印预览对话框对象 PrintPreviewDialog printPreviewDialog1 = new PrintPreviewDialog(); //将printDocument1对象赋值给打印预览对话框的Document属性 printPreviewDialog1.Document = printDocument1; //打开打印预览对话框 DialogResult result = printPreviewDialog1.ShowDialog(); if (result == DialogResult.OK) printDocument1.Print();//开始打印 } private void PrintDocument_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) { //设置打印内容及其字体,颜色和位置 e.Graphics.DrawString("Hello World!", new Font(new FontFamily("黑体"), 24), System.Drawing.Brushes.Red, 50, 50); } } }

打印时,会显示下图所示预览画面。

C#打印类PrintDocument、PrintDialog、PrintPreviewDialog使用示例2

注意:PrintDialog与PrintPreviewDialog位于名称空间System.Windows.Forms(程序集为System.Windows.Forms.dll)中,而PrintDocument位于名称空间System.Drawing.Printing(程序集为System.Drawing.dll)中。

【C#打印类PrintDocument、PrintDialog、PrintPreviewDialog使用示例】相关文章:

c#设计模式 适配器模式详细介绍

VS.net VSS时,编译报错:未能向文件“.csproj.FileListAbsolute.txt”写入命令行 对路径 的访问被拒绝。

c#进度条 progressBar 使用方法的小例子

C#给picturebox控件加图片选中状态的2个方法

c#实现隐藏与显示任务栏的方法详解

c#判断输入的是不是数字的小例子

C#切换鼠标左右键习惯无需控制面板中修改

探讨Object转为String的几种简易形式详解

C#语法糖(Csharp Syntactic sugar)大汇总

WinForm DataGridView控件隔行变色的小例子

精品推荐
分类导航