为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

.Net环境下有关打印页面设置、打印机设置、打印预览对 - 程序开发 - ASP.NET教程

2017-09-30 8页 doc 22KB 30阅读

用户头像

is_321635

暂无简介

举报
.Net环境下有关打印页面设置、打印机设置、打印预览对 - 程序开发 - ASP.NET教程.Net环境下有关打印页面设置、打印机设置、打印预览对 - 程序开发 - ASP.NET教程 .Net环境下有关打印页面设置、打印机设置、打印预览对 - 程序开发 - ASP.NET教程 本文《.Net环境下有关打印页面设置、打印机设置、打印预览对 - 程序开发 - ASP.NET教程》关键词:程序开发 ASP.NET教程 p; } try { //申明并实例化PrintPreviewDialog PrintPreviewDialog ppDlg = new PrintPreviewDialog(); //指...
.Net环境下有关打印页面设置、打印机设置、打印预览对 - 程序开发 - ASP.NET教程
.Net环境下有关打印页面设置、打印机设置、打印预览对 - 程序开发 - ASP.NET教程 .Net环境下有关打印页面设置、打印机设置、打印预览对 - 程序开发 - ASP.NET教程 本文《.Net环境下有关打印页面设置、打印机设置、打印预览对 - 程序开发 - ASP.NET教程》关键词:程序开发 ASP.NET教程 p; } try { //申明并实例化PrintPreviewDialog PrintPreviewDialog ppDlg = new PrintPreviewDialog(); //指定打印文档 ppDlg.Document = printDocument; //显示对话框 DialogResult result = ppDlg.ShowDialog(); if (result == DialogResult.OK) { //... } } catch(System.Drawing.Printing.InvalidPrinterException e) { MessageBox.Show("未安装打印机,请进入系统控制面版添加打印机~","打印",MessageBoxButtons.OK, MessageBoxIcon.Warning); } catch(Exception ex) { MessageBox.Show(ex.Message,"打印",MessageBoxButtons.OK,MessageBoxIcon.Warning); } } #endregion }//End Class }//End NameSpace 大家可以看到了#region指定,它与#endregion一起使用,可以把中间的文本折叠起来,很方便,需要查看的时候就单击前面的展开符号。后三个函数是比较重要的,同时提供它们的重载函数。ShowPageSetupDialog()与ShowPrintSetupDialog()返回用户确认的当前设置选择。 再建立一个类文件,名称为WebPrinterPageSetting。进入文件后,在类声明后面加上:IPrinterPageSetting,实现接口功能。程序清单如下: using System; namespace GoldPrinter { /// /// WebForm下的打印纸张设置、打印机设置、打印预览对话框。(***暂无具体实现***) /// public class WebPrinterPageSetting:IPrinterPageSetting { public WebPrinterPageSetting() { // // TODO: 在此处添加构造函数逻辑 // } #region IPrinterPageSetting 成员 public System.Drawing.Printing.PrintDocument PrintDocument { get { // TODO: 添加 WebPrinterPageSetting.PrintDocument getter 实现 return null; } set { // TODO: 添加 WebPrinterPageSetting.PrintDocument setter 实现 } } public PrintPageDelegate PrintPage { get { // TODO: 添加 WebPrinterPageSetting.PrintPage getter 实现 return null; } set { // TODO: 添加 WebPrinterPageSetting.PrintPage setter 实现 } } public System.Drawing.Printing.PageSettings ShowPageSetupDialog() { // TODO: 添加 WebPrinterPageSetting.ShowPageSetupDialog 实现 return null; } public System.Drawing.Printing.PrinterSettings ShowPrintSetupDialog() { // TODO: 添加 WebPrinterPageSetting.ShowPrintSetupDialog 实现 return null; } public void ShowPrintPreviewDialog() { // TODO: 添加 WebPrinterPageSetting.ShowPrintPreviewDialog 实现 } #endregion }//End Class }//End NameSpace 做到了这一步,大家可能说已经可以了,确实如此。因为在调用的时候实例化WinPrinterPageSetting/We bPrinterPageSetting并调用它的方法或属性就可以了。大家再想想我为什么要提供IPrinterPageSetting呢,如果我现在调用打印对话框,我也不管是Windows下还是Web下的,这时,IPrinterPageSetting就发挥了作用。 例如: IPrinterPageSetting _printerPageSetting; 申明了一个打印接口对象,以后就可以直接调用它的方法了,但是到底是Windows模式还是Web模式呢,我们只需要让程序自己去根据系统去实例为真正的WinPrinterPageSetting或WebPrinterPageSetting了。如: //创建接口对象的新实例,使其指象真正的实现其接口的对象 if (Windows模式) { _printerPageSetting = new WinPrinterPageSetting(); } else if(Web模式) { _printerPageSetting = new WebPrinterPageSetting(); } 在接下来的程序清单中我们可以看到这个效果。我们再建立一个PrinterPageSetting类,将WinPrinterPageSetting与WebPrinterPageSetting合二为一。在类的构造函数中增加自动判断Windows模式还是Web模式,同时也提供PrintMode属性可以让用户修改。程序清单如下: using System; using System.Drawing; using System.Drawing.Printing; using System.Windows.Forms; namespace GoldPrinter { /// /// 打印方式 /// public enum PrintModeFlag { /// /// Windows窗口打印方式 /// Win , /// /// Web窗口打印方式 /// Web } /// /// 封装页面设置、打印机设置、打印预览,适合于Window和Asp.Net。 /// 程序提供:周方勇;Email:flygoldfish@sina.com。 /// public class PrinterPageSetting { //申明一个封装页面设置、打印机设置、打印预览的接口 private IPrinterPageSetting _printerPageSetting; //打印方式 private PrintModeFlag _printModeFlag; public PrintModeFlag PrintMode { get { return this._printModeFlag; } set { this._printModeFlag = value; //运用了抽象模式,创建接口对象的新实例,使其指象真正的实现其接口的对象 if (this._printModeFlag == PrintModeFlag.Win) { _printerPageSetting = new WinPrinterPageSetting(); } else if(this._printModeFlag == PrintModeFlag.Web) { _printerPageSetting = new WebPrinterPageSetting(); } } } /// /// 获取或设置打印文档 /// public PrintDocument PrintDocument { get { return _printerPageSetting.PrintDocument; } set { _printerPageSetting.PrintDocument = value; } } ///
/
本文档为【.Net环境下有关打印页面设置、打印机设置、打印预览对 - 程序开发 - ASP.NET教程】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索