在后台线程中调用LocalReport.Render

时间:2009-11-12 20:36:31

标签: .net multithreading reporting-services reportviewer

我一直在使用Winforms ReportViewer控件一段时间了。我添加了自定义工具栏,并手动处理所有报表功能。

我的问题是超大报告。为了将我的报告呈现给Image(我用它来打印),我调用了ReportViewer.LocalReport.Render方法。较大的报告最终冻结了用户界面很长一段时间。

我的计划是在请求报告时“预取”渲染的图像。我试图在后台线程中执行此操作。我尝试过的所有内容都会导致用户界面在渲染调用期间无响应。

Render调用是否会导致线程(与UI线程无关)以某种方式锁定UI线程?

1 个答案:

答案 0 :(得分:2)

这是不可能的。

Render方法绝不允许作为线程运行。