如何将XAML插入RichTextBox?

存储在数据库中的XAML文本,如何在XmlReader读取XAML后在RichTextBox中显示其文本?

StringReader stringReader = new StringReader(xamlString); XmlReader xmlReader = XmlReader.Create(stringReader); 

rt.Document = ???

—— UPDATE ——————-这里是xamlString的内容:

 
HelloHello1TestingTesting2

从RichTextBox中检索XAML文本:

 private static string GetRTF(RichTextBox rt) { TextRange range = new TextRange(rt.Document.ContentStart, rt.Document.ContentEnd); MemoryStream stream = new MemoryStream(); range.Save(stream, DataFormats.Xaml); string xamlText = Encoding.UTF8.GetString(stream.ToArray()); return xamlText; } 

将XAML文本呈现为RichTextBox:

 private static FlowDocument SetRTF(string xamlString) { StringReader stringReader = new StringReader(xamlString); XmlReader xmlReader = XmlReader.Create(stringReader); Section sec = XamlReader.Load(xmlReader) as Section; FlowDocument doc = new FlowDocument(); while (sec.Blocks.Count > 0) doc.Blocks.Add(sec.Blocks.FirstBlock); return doc; } 

你可以调用RichTextBox.AppendText(string)