我在 asp.net 项目中有一个 rdlc 报告。我正在使用报告查看器 10.0.0.0 来查看和打印报告。除 Internet Explorer 外,报表查看器的打印按钮不显示。
虽然在我的情况下,打印按钮确实显示在 IE 中,但在按下它时会出现错误“无法加载客户端打印控件”。我发现报告查看器 2008 报告了类似的问题,但安装 SP 1 之类的解决方案并没有解决我的问题。
有没有办法独立于浏览器启用打印?
请帮忙。
您可以添加自己的按钮并将其调整为报告标题,并且使用 jquery 和 javascript 您可以从 chrome 或 firefox 打印
在页面加载时直接打印:
$(window).load(function() {
var a = document.getElementById("ReportFrame" + reporviwername).contentWindow;
a[1].print();
});
要在 PrintButton 上打印,请单击:
$('.PrintButton').live('click', function() {
var a = document.getElementById("ReportFrame" + reporviwername).contentWindow;
a[1].print();
});
报表查看器中的打印机控件实现为 ActiveX 控件。这些是 IE 特定的控件。因此,如果您使用 IE 以外的任何东西,您将无法获得该选项。
如果您想要独立于浏览器的版本,您可以将报告嵌入 pdf 格式。Pdfs 查看器有一个打印按钮。
根据我的经验,它适用于大多数现代浏览器。pdf 格式也是标准格式,因此无论使用哪种浏览器,您的报告都会以相同的方式打印。
正如大家所建议的那样,报表查看器控件仅使用 ActiveX 控件呈现,而许多其他浏览器不支持这一点,所以不可能,但 IE。
因此,Microsoft 在 SQL Server Reporting Service 2016 和更高版本之后的最新版本中更新了他们的支持功能,他们更新了对 ActiveX 控件的依赖项。
因此,您可以将 Reporting Services 更新为最新。参考:更新的报告查看器控件