我正在开发一个报告系统,DocumentPage
将通过DocumentPaginator
. 这些文档包括许多要实例化的WPF 组件XpsDocumentWriter
,因此分页器在稍后发送到(又发送到实际打印机)时包含正确的内容。
我现在的问题是DocumentPage
创建实例需要相当长的时间(足以让 Windows 将应用程序标记为已冻结)所以我尝试在后台线程中创建它们,这是有问题的,因为 WPF 期望它们的属性从图形用户界面线程。我还想显示一个进度条,指示到目前为止已经创建了多少页。因此,看起来我试图让两件事在 GUI 上并行发生。
这个问题很难解释,我真的不知道如何解决它。简而言之:
- 创建一系列
DocumentPag
e。- 这些包括WPF 组件
- 这些将在后台线程上创建,或者使用其他一些技巧,这样应用程序就不会被冻结。
- 创建每个页面后,应更新WPF ProgressBar 。
如果没有合适的方法来做到这一点,那么替代解决方案和方法将非常受欢迎。