在文本框中设置文本颜色C#

时间:2011-07-03 07:48:44

标签: c# winforms

我有一个多行文本框,用于显示我在应用程序中执行的操作的状态消息。我想在文本框中为不同的行设置单独的颜色。如果我使用ForeColor属性,它会设置所有文本的颜色。我想设置一行的颜色。我怎么能这样做?

谢谢, 勒凯什。

6 个答案:

答案 0 :(得分:7)

您需要使用RichTextBox代替。然后,您可以使用属性SelectionStartSelectionLengthSelectionColor来实现您想要的效果,这是最简单的解决方案。您也可以直接修改RTF。实际上,您只需编辑设计器代码并将System.Windows.Forms.TextBox引用更改为RichTextBox,然后对代码进行一些小的修改。

答案 1 :(得分:2)

TextBox控件不支持中间线的着色。请改用ListView。您可以使用“详细信息”或“列表”查看模式来实现类似的外观。

答案 2 :(得分:1)

使用内置控件无法做到这一点。

继承它并创建自己的控件,或者使用类似的东西:
Background color of a ListBox item (winforms)

在那里它是背景颜色,但你也可以采用不同的前色。

答案 3 :(得分:0)

TextBox不支持多种颜色(或字体或大小)。你必须使用RichTextBox。

答案 4 :(得分:0)

你不能。

您需要改为使用Rich TextBox

答案 5 :(得分:0)

您必须为此使用richtextbox。您可以指定与文本内联的各种格式