我正在使用MSDN中的这个简单示例
在RichTextBox
中插入行。
FlowDocument myFlowDoc = new FlowDocument();
Run myRun = new Run("This is flow content and you can ");
Bold myBold = new Bold(new Run("edit me!"));
Paragraph myParagraph = new Paragraph();
myParagraph.Inlines.Add(myRun);
myParagraph.Inlines.Add(myBold);
myFlowDoc.Blocks.Add(myParagraph);
RichTextBox myRichTextBox = new RichTextBox();
myRichTextBox.Document = myFlowDoc;
我想将选定的颜色应用于文本行,但是该怎么做?
Paragraph
或Run
类没有任何直接更改颜色的方法。
编辑
我不想使用链接帖子上发布的所有SelectionStart
,SelectionEnd
笨拙的东西!。
我的案例与众不同,并且更为简单:从 mm8 发布的解决方案对此进行了说明,并且非常优雅。 一行代码就可以了!
请查看答案!
答案 0 :(得分:6)
Paragraph
或Run
类没有任何直接更改颜色的方法。
Run
类继承自TextElement
,并且该类具有Foreground
属性,您可以将其设置为Brush
:
Run myRun = new Run("This is flow content and you can ") { Foreground = Brushes.Red };
Bold myBold = new Bold(new Run("edit me!") { Foreground = Brushes.Gray });
答案 1 :(得分:2)
您可以通过富文本框的Foreground属性获取/设置文本颜色。作为下面的示例,我将富文本框的文本颜色更改为蓝色:
myRichTextBox.Foreground = Brushes.Blue;
编码愉快!