RichTextBox
Додати текст
1.
richTextBox1.Document.Blocks.Clear();
richTextBox1.Document.Blocks.Add(new Paragraph(new Run("Текст 1")));
2.
TextRange textRange = new TextRange(richTextBox.Document.ContentStart, richTextBox.Document.ContentEnd);
textRange.Text = "Новий текст";
Прочитати текст
string richText = new TextRange(richTextBox.Document.ContentStart, richTextBox.Document.ContentEnd).Text;
Виділений текст
richTextBox.Selection.Text
Приклад виділення
TextRange tempRange = new TextRange(rtbEditor.Document.ContentStart, rtbEditor.Selection.Start);
txtStatus.Text = "Виділення починається з символу номер: " + tempRange.Text.Length +
Environment.NewLine;
txtStatus.Text += "Виділено символів: " + rtbEditor.Selection.Text.Length +
Environment.NewLine;
txtStatus.Text += "Виділений текст: " + rtbEditor.Selection.Text;
Є можливість пофарбувати окрему фразу
Paragraph paragraph = new Paragraph();
richTextBox.Document = new FlowDocument(paragraph);
paragraph.Inlines.Add("Простий текст");
paragraph.Inlines.Add(new LineBreak());
paragraph.Inlines.Add(new Bold(new Run("Жирний і червоний текст"))
{
Foreground = Brushes.Red
});
paragraph.Inlines.Add(new LineBreak());
paragraph.Inlines.Add("Простий текст");
Тло
paragraph.Background = Brushes.Red;
XAML
<RichTextBox Margin="10">
<FlowDocument>
<Paragraph FontSize="36">Привіт, Світ!</Paragraph>
<Paragraph FontStyle="Italic" TextAlignment="Left" FontSize="14" Foreground="Gray">
Мене можна редагувати!</Paragraph>
</FlowDocument>
</RichTextBox>