Есть ли способ подчеркнуть один символ в текстовом блоке WPF?
Вопрос
Есть ли способ нанести украшение подчеркивания текста к одному символу только в текстовомблке (или любую сумму, меньше полного блока)?
У меня есть какой-то текст, который я хочу выводить как «Этот WORF ISSPELT» и у f
в worf
подчеркнул.
Я знаю, что вы можете сделать:
TextBlock47.TextDecorations = TextDecorations.Underline;
Но я не хочу, чтобы весь блок подчеркнул.
Не удалось, что есть еще один контроль, который я могу использовать, кроме TextBlock, который дает эту возможность? Я посмотрел на богатый текст, но это похоже на ужасное много работы для того, что является простой эффектом. Если это является Единственный способ, как мне идти о создании текста определенного формата (10pt, Courier New, один символ подчеркнул) в C # код?
Решение
Ты можешь использовать Подчеркивать в TextBlock:
<TextBlock Name="textBlock47">
this wor<Underline>f</Underline> is misspelt
</TextBlock>
или
textBlock47.Inlines.Add(new Run("this wor"));
textBlock47.Inlines.Add(new Underline(new Run("f")));
textBlock47.Inlines.Add(new Run(" is misspelt"));