我正在使用RichTextBox
来显示一些只能在运行中标记的只读文本。 如何在文本中传递标记代码以使其由RichTextBox
控件呈现?RichTextBox - 如何通过标记代码
例如,我想将this is \cf6 sample \cf1 text
传递给richtextbox进行渲染。
现在,我构建了一个FlowDocument
并将文本值添加到运行对象,但文本逐字呈现。
RichTextBox fieldLabel = new RichTextBox();
FlowDocument flowDoc = new FlowDocument();
Paragraph myPara = new Paragraph();
Run myRun = new Run(content);
myPara.Inlines.Add(myRun);
flowDoc.Blocks.Add(myPara);
fieldLabel.Document = flowDoc;
我想看到红色的值,但我看到的是标记。
在此先感谢您的任何意见。
你能肯定吗?您可能需要检查文档。 http://msdn.microsoft.com/en-us/library/system.windows.controls.richtextbox.aspx – Paparazzi 2012-08-10 22:56:49
是的。看到这个http://msdn.microsoft.com/en-us/library/system.windows.documents.textrange.load.aspx – IUnknown 2012-08-10 23:54:06
这是一个使用上面粘贴的代码工作的示例。 '私人无效Window_Loaded(对象发件人,RoutedEventArgs E) { 串yourRTFText = @“{\ RTF1 \ ANSI {\ fonttbl \ F0 \ fswiss黑体;} \ F0 \ PARD 这是一些{\ b黑体}文本\ par }“; MemoryStream stream = new MemoryStream(UTF8Encoding.Default.GetBytes(yourRTFText)); richTextBox1.Selection.Load(stream,DataFormats.Rtf); }' – IUnknown 2012-08-11 00:01:15