2014-01-24 23 views
0
TextRange range; 
FileStream fStream; 
range = new TextRange(richTextBox.Document.ContentStart, richTextBox.Document.ContentEnd); 
fStream = new FileStream("C:\\lol2\\joo.Rtf", FileMode.Create); 
range.Save(fStream, DataFormats.Rtf); 
fStream.Close(); 

它正确地做的一切,但我不能在range.Text \看到B为例。我需要操作粗体,下划线和斜体文本,所以如果在单词之前有\ b,我需要将它替换为HTML标记。如果,如果他们格式不同,我可以收集整个文本,将一个字符串或某些话我可以操纵他们为什么我不能看到粗体,下划线,字符串斜体码的TextRange范围

XAML:

<RichTextBox x:Name="richTextBox" Grid.Row="1" SelectionChanged="RichTextBox_SelectionChanged" /> 

内WPF应用程序,我写的文字,并使用控件进行粗体字等。

+0

你从哪里看不到'\ b'? HTML与它有什么关系?你有一个FlowDocument,并将它保存为RTF ...请澄清你的问题。 –

+0

我不能在range.Text中的调试模式下看到\ b。我只需要使用格式从richtextbox获取整个内容。如果某些单词是粗体的,我可以在它之前和之后放置标签。 –

回答

0

你可以这样设置:

range.ApplyPropertyValue(TextElement.FontWeightProperty,FontWeights.Bold);

+0

不起作用,没有显示任何\ b之前从richtextbox加粗的单词。 –

+0

也许你应该给我们作为源文本的例子,你正在寻找不同的标签,并试图替换它们。 – tansuk

+0

我没有这种源文本,因为我不能得到粗体的单词 –

相关问题