是否可以在不阻塞 UI 线程的情况下在 Silverlight 中打印?
我必须打印很多页面,因此我的 UI 冻结了一段时间。我想改为在后台线程上打印(并尽可能更新进度条),但不知道如何。
我尝试在 a 的Print()
方法中调用 myPrintDocument
的DoWork()
方法BackgroundWorker
,但这给了我一个UnauthorizedAccessException "Invalid cross-thread access"
.
似乎即使在 UI 线程之外启动 PrintDocument 也是不可能的:
PrintDocument pd = new PrintDocument();
在BackgroundWorker.DoWork()
抛出相同的异常。
我发现很多帖子,人们说打印必须在 UI 线程上进行,但没有相关文档。我是多线程的新手,所以任何正确方向的指针都将不胜感激。