【问题标题】:Embed a WPF UI object into a Word/OpenOffice document?将 WPF UI 对象嵌入到 Word/OpenOffice 文档中?
【发布时间】:2011-02-17 20:42:39
【问题描述】:

我正在处理一个需要将自定义对象嵌入文档(Microsoft Word 或 OpenOffice Writer)的项目。这些对象本质上类似于 Microsoft Equation 或 OpenOffice Formula 对象,不同之处在于它们将呈现并允许编辑特定于我们业务的内容。最终,文档被导出为 PDF。

由于此项目中的所有其他内容均基于 WPF,并且我们的开发环境和构建过程均基于 .Net,因此能够完全或几乎完全使用 WPF/.Net 创建这些对象会很好。

将对象嵌入文档最明显的选择是 OLE,但据我所知,WPF 对 OLE 的支持很少。

我有什么选择?什么是最好的(可靠、高性能和简单)?

(或者如果有人确定除了使用 C++ 或 VB6 之类的语言进入 OLE 之外没有其他好方法,那也很高兴)

【问题讨论】:

    标签: .net wpf ole


    【解决方案1】:

    您可以在 WPF RichTextBox 中执行此操作,只需在其中插入一个 InlineUIContainer(或 BlockUIContainer)即可在其中放置任何 UIElement,例如按钮或更复杂的东西。

    然后,您可以使用 OpenXML SDK 将 RichTextBox 内容(最初是 FlowDocument)转换为 RTF 或 XAML 或 HTML,或转换为 Office OpenXML 格式 (.docx)。

    也许可以将RichTexBox 替换为实际的Microsoft Word 窗口,卡在您的WPF 应用程序中,并在其中嵌入WPF 控件,就像您使用InlineUIContainer 一样,但我还不知道怎么做。如果我发现了,我会发布。

    【讨论】:

      猜你喜欢
      • 2011-01-02
      • 1970-01-01
      • 1970-01-01
      • 2015-08-30
      • 2015-01-29
      • 2011-05-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多