C#代码中TextBox / RichTextBox的大部分内容

时间:2014-06-22 00:31:27

标签: c# wpf fonts textbox

有很多例子说明如何通过xaml代码格式化TextBox中的文本,但我想弄清楚如何更改.cs文件中的代码。

//TextBox tb initialized in .xaml code
tb.Text = "<bold>Bold</bold> and normal and <italic>Italic</italic>";

符合我的要求。这可能吗?

最终结果如下:

大胆,正常,斜体

2 个答案:

答案 0 :(得分:1)

如果您决定使用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

答案 1 :(得分: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);