以编程方式将本地报告呈现给XPS

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了以编程方式将本地报告呈现给XPS相关的知识,希望对你有一定的参考价值。

我正在尝试将LocalReport呈现为XPS文件,因此我可以使用XPS Print API从Windows服务中将其打印出来,如this article中所示。

我发现的问题是我无法直接向XPS呈现本地报告。也许我可以将其渲染为图像流,然后将该图像嵌入到手动创建的XPS中,但是我不太喜欢这种解决方案。

我非常感谢任何有关将LocalReport渲染到XPS的建议。

答案

不幸的是,这并不容易。除外。

首先,一切都必须在STA线程内发生。因此,您首先要解决线程问题。

接下来,XPS文档与WPF紧密相连。 XPS文档将其内容公开为FixedDocumentSequences,即DependencyObjects。这就是WPF。您的LocalReport是not WPF,它是基于表单的组件。

您唯一的选择是将报表呈现为某种格式,该格式可以通过您编码的某种解析和呈现过程转换为WPF表示形式。这可能像从报表创建图像一样简单,也可能像编写XSLX转换器一样困难。

但是为什么首先还要为此烦恼呢? The documentation for LocalReport显示了如何在不处理XPS打印路径的情况下打印报告。

以上是关于以编程方式将本地报告呈现给XPS的主要内容,如果未能解决你的问题,请参考以下文章

通过将文件(即 docx、xlsx、txt)发送到“Microsoft XPS Document Writer”打印机,以编程方式将文件(即 docx、xlsx、txt)转换(保存)为 XPS

以编程方式将投影内容传递给儿童? (否则将呈现为 <ng-content> )

如何以编程方式从 iOS Swift 3 中的 XIB 推送和呈现给 UIViewController

以编程方式将 Razor 页面呈现为 HTML 字符串

mongrel rails - 以编程方式报告它在哪个端口上运行

如何以模态方式呈现标准 UIViewController