#c# #wpf #fonts #textbox
#c# #wpf #шрифты #текстовое поле
Вопрос:
Существует много примеров того, как форматировать текст в текстовом поле с помощью кода xaml, но я пытаюсь выяснить, как изменить код в моем файле .cs.
//TextBox tb initialized in .xaml code
tb.Text = "<bold>Bold</bold> and normal and <italic>Italic</italic>";
соответствует тому, что я ищу. Возможно ли это?
Конечный результат будет выглядеть так:
Полужирный, обычный и курсивный
Ответ №1:
Вы можете сделать это RichTextBox
, добавив строки, подобные этой:
Paragraph paragraph = new Paragraph();
paragraph.Inlines.Add(new Bold(new Run("Bold")));
paragraph.Inlines.Add(new Run(" and normal"));
paragraph.Inlines.Add(new Italic(new Run(" and Italic")));
richTextBox.Document = new FlowDocument(paragraph);
Ответ №2:
Если вы решите использовать TextBlock
, вы можете использовать следующее:
this.myTextBlock.Inlines.Add(new Bold(new Run("Bold")));
this.myTextBlock.Inlines.Add(" and normal and ");
this.myTextBlock.Inlines.Add(new Italic(new Run("italic")));
В противном случае, если вам нужно использовать TextBox
, вы можете применять стиль только ко всему тексту, например, используя myTextBox.FontWeight
.