1

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

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

在这里最好使用什么?富文本控件很难填充(我认为),而 html 也不容易显示,不是吗?

4

1 回答 1

1

很确定 RichTextBox 应该是您的答案。

您将拥有一个RichTextBox,其中包含一个FlowDocument,其中包含您的Tables

从第一篇文章开始:

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

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

从 RichTextBox 复制内容时,会将其视为标准 RTF,因此 Word 将识别大部分(如果不是全部)格式。

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

我什至隐约记得在 Visual Studio 的 WPF 设计器中编辑 XPS 文件——尽管不要引用我的话,因为那是几年前的事了,我不记得我到底做了什么。

于 2010-10-22T14:00:15.293 回答