我想在客户端WPF应用程序中显示一些格式化文本,用户可以选择并复制到word。
它需要由应用程序轻松创建,内部最大的格式化内容是一些表格,其中一些单元格是右对齐的。
这里最好用的是什么?一个richtext控件很难填充(我认为)并且html不容易显示,不是吗?
答案 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文件 - 虽然不引用我,因为它是在几年前,我不记得我到底做了什么。