C# rtf字符串源的RichTextBox显示不正确

C# rtf字符串源的RichTextBox显示不正确,c#,wpf-controls,richtextbox,rtf,C#,Wpf Controls,Richtextbox,Rtf,我有带rft格式文本的字符串。我相信这个字符串是正确的,因为当我在记事本中输入并另存为rtf文档时,它会正确显示。 问题是,当我尝试将文本传递给RichTextBox时,突出显示未应用于文本。 预期结果是RichtextBox,带有灰色粗体文本和突出显示的单词“PORTS”,但我只得到粗体灰色文本 传递给RichTextBox的Rtf字符串: “{\rtf1\ansicpg1252\deff0\nouicompat\deflang1033{\fonttbl{\f0\fnil\fcharset0

我有带rft格式文本的字符串。我相信这个字符串是正确的,因为当我在记事本中输入并另存为rtf文档时,它会正确显示。 问题是,当我尝试将文本传递给RichTextBox时,突出显示未应用于文本。

预期结果是RichtextBox,带有灰色粗体文本和突出显示的单词“PORTS”,但我只得到粗体灰色文本

传递给RichTextBox的Rtf字符串: “{\rtf1\ansicpg1252\deff0\nouicompat\deflang1033{\fonttbl{\f0\fnil\fcharset0 Segoe UI;}{\colortbl;\red50\green146\blue255;\red235\green153\blue45;\red105\green105\blue105;}\viewkind0\uc1\pard\sa0\sl276\slmult1\cf0\f0\f0\f0\fs32\lang9\b\cf3\highlight2端口\highlight0文档。\cf0\f0\b0\b0\par}”

保存为Rtf文档的Rtf字符串: {\rtf1\ansicpg1252\deff0\nouicompat\deflang1033{\fonttbl{\f0\fnil\fcharset0 Segoe UI;}{\colortbl;\red50\green146\blue255;\red235\green153\blue45;\red105\green105\blue105;}\viewkind0\uc1\pard\sa0\sl276\slmult1\cf0\f0\f0\fs32\lang9\b\cf3\highlight2端口\highlight0文档。\cf0\b0\b0

正确显示的rtf字符串示例(此处的文本不是光头也不是灰色):

private void UpdateRtf()
    {
      MemoryStream stream = new MemoryStream(ASCIIEncoding.Default.GetBytes(RtfString));
      TextRange range = new TextRange(Document.ContentStart, Document.ContentEnd);
      range.Load(stream, DataFormats.Rtf);
    }


“{\rtf1\ansicpg1252\deff0\nouicompat\deflang1033{\fonttbl{\f0\fnil\fcharset0 Segoe UI;}{\colortbl;\red50\green146\blue255;\red235\green153\blue45;\red105\green105\blue105;}\viewkind0\uc1\pard\sa0\sl276\slmult1\cf0\f0\f0\fs30\lang9\highlight2端口\highlight0串行\highlight2端口\highlight0使用COM\highlight2端口的highlight0”

用于将字符串设置为RithTextBox的方法:

private void UpdateRtf()
    {
      MemoryStream stream = new MemoryStream(ASCIIEncoding.Default.GetBytes(RtfString));
      TextRange range = new TextRange(Document.ContentStart, Document.ContentEnd);
      range.Load(stream, DataFormats.Rtf);
    }



为什么不将rtf保存到一个文件中并使用
RichTextBox1.LoadFile(rtfFIlePath)
@preciousbetine我有很多这样的RichTextBox和rtf字符串。不要认为每次都将字符串保存到文件是一个好的选择