C# rtf字符串源的RichTextBox显示不正确
我有带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字符串示例(此处的文本不是光头也不是灰色):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
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字符串。不要认为每次都将字符串保存到文件是一个好的选择