程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> ASP.NET基礎 >> ASP.NET 水晶報表打印功能實現代碼

ASP.NET 水晶報表打印功能實現代碼

編輯:ASP.NET基礎
1.用IE的打印,調用window.print(),但這種辦法對於頁面上即有報表,又有其它控件情況就無法區分,不能達到只打印報表內容的目的;
2.自已寫打印代碼
代碼如下:
復制代碼 代碼如下:
CrystalDecisions.CrystalReports.Engine.ReportDocument rd=new CrystalDecisions.CrystalReports.Engine.ReportDocument();
rd.Load(Server.MapPath("Crystalreport1.rpt"));
rd.PrintOptions.PrinterName="打印機名稱";
rd.PrintToPrinter(1,true,0,0);

其中"打印機名稱":如果是網絡打印機,在打印機名稱前面要加上"\\機器名".本地打印機也可以顯示在DropDownList控件裡讓用戶選擇:
復制代碼 代碼如下:
foreach(string iprt in System.Drawing.Printing.PrinterSettings.InstalledPrinters)
this.DropDownList1.Items.Add(iprt);

這個辦法可以只打印報表中的內容,缺點就是必須指明打印機名稱.如果是本地打印機還好辦,可以枚舉出來,讓用戶選擇.但如果是網絡打印機,似乎就有些麻煩,我還不知道怎麼把網絡打印機列出來讓用戶選擇,或者自動選默認的網絡打印機.
3.導出到PDF或EXCEL或其它格式的文件打印.示例代碼如下:
報表名稱 myrpt=new 報表名稱();
復制代碼 代碼如下:
myrpt.ExportOptions.ExportDestinationType=CrystalDecisions.Shared.ExportDestinationType.DiskFile;
myrpt.ExportOptions.ExportFormatType=CrystalDecisions.Shared.ExportFormatType.PortableDocFormat;
CrystalDecisions.Shared.DiskFileDestinationOptions opt=new CrystalDecisions.Shared.DiskFileDestinationOptions();
opt.DiskFileName=@"文件名";
myrpt.ExportOptions.DestinationOptions =opt;
myrpt.Export();
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved