Мне нужно применить форматирование абзаца к выделенному фрагменту в текстовом поле.Мой RTB будет вести себя так же, как расширенные текстовые поля в StackOverflow - пользователь может вводить текст в RTB, но он также может вводить блоки кода.RTB применяет очень простое форматирование к блоку кода - он меняет шрифт и применяет цвет фона ко всему блоку, аналогично тому, что вы видите в блоке кода ниже.
Изменение шрифта довольнопросто:
var textRange = new TextRange(rtb.Selection.Start, rtb.Selection.End);
textRange.ApplyPropertyValue(TextElement.FontFamilyProperty, "Consolas");
textRange.ApplyPropertyValue(TextElement.FontSizeProperty, 10D );
Теперь мне нужно применить форматирование на уровне абзаца.Мне нужно установить поле абзаца на 0, чтобы я не получил пустую строку между строками кода, и мне нужно установить цвет фона абзаца.Вот моя проблема: я не могу понять, как получить элементы абзаца из выделения, чтобы я мог применить форматирование.
Есть предложения?Пример применения свойств Margin и Background был бы невероятно полезен.Спасибо!