【问题标题】:Display rich formatted text using WPF使用 WPF 显示富格式文本
【发布时间】:2014-08-03 20:08:26
【问题描述】:
我是 WPF 的新手,所以如果您觉得我的问题过于初级,请多多包涵。我想从数据库中获取文本并在我的 WPF 应用程序上显示这个格式丰富的文档据我所知,我应该使用 RICHTEXTBOX。
所以,我的问题是我应该将格式丰富的文本存储到数据库中,然后将其显示到窗口(理想情况下,显示将保持其格式),还是应该只存储不格式化的单词行,并在将其显示在窗口上时对其进行格式化。我应该采取哪种方式以及如何做到这一点。非常感谢您提供代码如何存储或如何显示的具体答案。
【问题讨论】:
标签:
c#
wpf
database
richtextbox
【解决方案1】:
您可以将文本(rtf 格式)保存在数据库中,然后将其加载到 RichTextBox 中,如下所示:
TextRange documentTextRange = new TextRange(RICHTEXTBOXNAME.Document.ContentStart, RICHTEXTBOXNAME.Document.ContentEnd);
using (FileStream fs = File.Open(FILENAME, FileMode.Open))
{
documentTextRange.Load(fs, DataFormats.Rtf);
}
在本例中,内容存储在一个文件中,但没有太大区别。
RichTextBox 无法与所有 rtf 内容完全兼容,因此如果您从其他来源创建 rtf,您可能会遇到一些图形故障。