如何在不显示表单的情况下打印ReportViewer的报表

Ada*_*son 14 .net c# reporting-services

虽然我意识到我可以在屏幕外显示表单并隐藏它,以及许多其他形式的WinForms hackish魔法,我宁愿坚持使用zen路径并完成正确的操作.我有一个SSRS本地报告(所以没有服务器),我想让用户选择查看或打印(换句话说,我不想强​​迫他们查看打印).不幸的是,当我尝试将它打印为我在代码中显式创建的组件(当然是在using()块内部时)或者如果我尝试实例化我的查看器表单时,ReportViewer控件会抱怨它的"状态".只是打印而不显示它.

有没有办法做到这一点,能与我好好相处,还是我应该把它展示在屏幕外并继续我的生活?

小智 22

我在我的博客上发布了一个样本:http://blogs.msdn.com/brianhartman/archive/2009/02/27/manually-printing-a-report.aspx

LocalReport对象可以独立于ReportViewer控件进行实例化,并直接用于附加到该博客文章的示例代码中.或者,即使您没有首先在UI中显示报表,也可以传入ReportViewer.LocalReport.

  • 不幸的是,链接不再有效:​​(@BrianHartman 你能提供一个更新的链接吗? (2认同)