当前位置导航:炫浪网>>网络学院>>网页制作>>ASP.NET教程

Asp.net水晶报表之打印和导出格式

  在ASP.NET中水晶报表没有象在Windows Form中那样提供报表的导出和打印功能,需要我们自己动手添加代码来控制,下面给个DEMO:

  导出:

  myReport ReportDoc = new myReport();//表表的名称

  private void btnExport_Click(object sender, System.EventArgs e)

  {

  CrystalDecisions.Shared.DiskFileDestinationOptions DiskOpts = new CrystalDecisions.Shared.DiskFileDestinationOptions();

  ReportDoc.ExportOptions.ExportDestinationType = CrystalDecisions.Shared.ExportDestinationType.DiskFile;

  switch (DropDownList1.SelectedItem.Text)

  {

  case "Rich Text (RTF)":

  ReportDoc.ExportOptions.ExportFormatType = CrystalDecisions.Shared.ExportFormatType.RichText;

  DiskOpts.DiskFileName = "d:\\demo.rtf";

  break;

  case "Portable Document (PDF)":

  ReportDoc.ExportOptions.ExportFormatType = CrystalDecisions.Shared.ExportFormatType.PortableDocFormat;

  DiskOpts.DiskFileName = "d:\\demo.pdf";

  break;

  case "MS Word (DOC)":

  ReportDoc.ExportOptions.ExportFormatType = CrystalDecisions.Shared.ExportFormatType.WordForWindows;

  DiskOpts.DiskFileName = "d:\\demo.doc";

  break;

  case "MS Excel (XLS)":

  ReportDoc.ExportOptions.ExportFormatType = CrystalDecisions.Shared.ExportFormatType.Excel;

  DiskOpts.DiskFileName = "d:\\demo.xls";

  break;

  default:

  break;

  }

  ReportDoc.ExportOptions.DestinationOptions = DiskOpts;

  ReportDoc.Export();

  }

  打印:

  private void btnPrint_Click(object sender, System.EventArgs e)

  {

  string strPrinterName; // 指定打印机名称

  strPrinterName = @"Canon Bubble-Jet BJC-210SP";

  PageMargins margins;// 设置打印页边距

  margins = ReportDoc.PrintOptions.PageMargins;

  margins.bottomMargin = 250;

  margins.leftMargin = 350;

  margins.rightMargin = 350;

  margins.topMargin = 450;

  ReportDoc.PrintOptions.ApplyPageMargins(margins);

  ReportDoc.PrintOptions.PrinterName = strPrinterName;//应用打印机名称

  // 打印报表.startPageN 和 endPageN

  // 参数设置为 0 表示打印所有页。

  ReportDoc.PrintToPrinter(1, false,0,0);

  }

相关内容
赞助商链接