在WPF中显示一些格式化文本,用户可以将其复制到word

时间:2010-10-22 13:48:20

标签: wpf formatting richtext

我想在客户端WPF应用程序中显示一些格式化文本,用户可以选择并复制到word。

它需要由应用程序轻松创建,内部最大的格式化内容是一些表格,其中一些单元格是右对齐的。

这里最好用的是什么?一个richtext控件很难填充(我认为)并且html不容易显示,不是吗?

1 个答案:

答案 0 :(得分:1)

非常确定RichTextBox应该是你的答案。

您的RichTextBox包含FlowDocument,其中包含Tables

从第一篇文章开始:

  

RichTextBox控件使您可以   显示或编辑流程内容,包括   段落,图像,表格等。   本主题介绍TextBox   class并提供如何使用的示例   在可扩展应用程序中使用它   标记语言(XAML)和C#。

<RichTextBox>
  <FlowDocument>
    <Table>
      <TableRowGroup>
        <TableRow>
          <TableCell>
            <!-- One or more Block-derived object… -->
          </TableCell>
        </TableRow>
      </TableRowGroup>
    </Table>
  </FlowDocument>
</RichTextBox>

当从RichTextBox复制内容时,它被视为标准RTF,因此Word将识别大多数(如果不是全部)格式。

有趣的想法:FlowDocuments与XPS文件格式密切相关,Windows 7 / Vista可以本机打印。 Silverlight / WPF / XPS与某些程度上的Word 2007 docx文件之间存在大量的互操作性。

我甚至依旧记得在Visual Studio的WPF设计器中编辑一个XPS文件 - 虽然不引用我,因为它是在几年前,我不记得我到底做了什么。