Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Although this blog is about XAML only I decided to take on the next step and write some code behind.
1. How to get selection range excluding the UIElements and such from RichTextBox:
StartIndex = new TextRange(richTextBox.Document.ContentStart, richTextBox.Selection.Start).Text.Length;
Count = new TextRange(richTextBox.Document.ContentStart, richTextBox.Selection.End).Text.Length - StartIndex;
2. How to change font weight, change to italic, etc of selected text:
EditingCommands.ToggleBold.Execute(null, richTextBox);
3. How to change background color or other attributes of selected text:
Span span = new Span(richTextBox.Selection.Start, richTextBox.Selection.End);
span.Background = Brushes.Red;
Note that the span you create will update only the part of the text that does not overlap with another span or element
For example: text<Span> sample</Span>
If you try adding a span for "text sa" then only the "text" part will be updated since the " sa" text is inside another element.
Comments
- Anonymous
June 23, 2008
Thank a'lot! this blog was very usefull!