在报表查看器中以编程方式触发导出和打印命令

本文关键字:命令 打印 方式触 编程 报表 | 更新日期: 2023-09-27 18:11:41

由于我无法拦截asp.net中报告查看器的"打印"answers"导出"事件(我之前的问题)。我现在正在考虑使用按钮以编程方式触发这两个函数。

有没有人已经能够在报表查看器asp.net中实现这一点?我的意思是在这些控件设置为不可见的报表查看器中触发"打印"answers"导出为pdf"?

在报表查看器中以编程方式触发导出和打印命令

reportview1 . printdialog()似乎可以工作。但我不确定出口。

导出:

private void DoExport(string exportType) {
  Warning[] warnings;
  string[] streamids;
  string mimeType;
  string encoding;
  string extension;
  string filename;
  byte[] bytes = reportViewer.LocalReport.Render(
     exportType, null, out mimeType, out encoding,
      out extension,
     out streamids, out warnings);
  filename = string.Format("report-{0:yyyy-MM-dd}.{1}", DateTime.Now, extension);
  Response.ClearHeaders();
  Response.Clear();
  Response.AddHeader("Content-Disposition", "attachment;filename=" + filename);
  Response.ContentType = mimeType;
  Response.BinaryWrite(bytes);
  Response.Flush();
  Response.End();
}
protected void btnExportToExcel_Click(object sender, EventArgs e) {
  DoExport("Excel");
}
protected void btnExportToPdf_Click(object sender, EventArgs e) {
  DoExport("Pdf");
}

不确定打印(如何在服务器上触发客户端功能?)div;)