2014-01-24 1 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" /> 

Im написание текста внутри приложения WPF и с помощью элементов управления, чтобы сделать слова жирным шрифтом и т.д.

+0

Где вы не видите '\ b'? И что с ним связано HTML? У вас есть FlowDocument, и вы сохраняете его как RTF ... Просьба уточнить ваш вопрос. –

+0

Я не могу видеть \ b в режиме отладки внутри range.Text. Мне просто нужно получить весь контент из richtextbox с форматами. Если часть слов выделена полужирным шрифтом, я могу разместить теги до и после нее. –

ответ

0

Вы можете установить, как это:

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

+0

Не работает, не отображал никаких \ b перед жирным шрифтом из richtextbox. –

+0

Возможно, вам следует привести пример в качестве исходного текста, который вы ищете для разных тегов и пытаетесь их заменить. – tansuk

+0

У меня нет такого исходного текста, потому что я не могу получить слова, выделенные полужирным шрифтом –