如何在多行TextBox中设置字符串的ForeColor?

时间:2011-05-03 08:19:56

标签: c# asp.net textbox

  

可能重复:
  I want different colours in my C# webform textbox!

我有一个TextBox控件TextMode="MultiLine"。它就像一个聊天应用程序,其中用户名出现在不同的color中,并且消息以黑色显示。如何仅为用户名更改TextBox的ForeColor

4 个答案:

答案 0 :(得分:2)

据我所知,这是不可能的(改变文本框中文本不同部分的颜色)。您只能使用1种颜色,最好的方法是将其包装在HTML中,并将用户名作为单独的div显示,并将文本控件浮动到右侧。

答案 1 :(得分:2)

重复性问题:

I want different colours in my C# webform textbox!

您有两种选择:

  • 使用已禁用工具栏的自定义编辑器! (如提到的主题所述)
  • 使用可编辑的div(允许输入)并使用css!
  • 格式化其中的元素

另一种解决方案可能是这样的:

  1. 创建一个带有边框的div元素将模拟您的文本框
  2. 在div的第一个处创建一个span元素来保存您的用户名!
  3. 在每个用户名前面创建一个文本框,以便其输入消息!
  4. 但请记住,此解决方案适用于输入新消息。对于旧消息,您应该使用div和span仅元素(没有文本框)来显示它们。发布的消息不需要文本框,因为它们不可编辑!

答案 2 :(得分:0)

您无法为文本框中的单独字词添加不同的颜色。 您只能为整个文本框设置一种颜色。

  

MyTextBox.ForeColor = Color.Red;

在任何其他情况下,您必须使用HTML和CSS构建它

答案 3 :(得分:0)

尝试使用RichTextBox来获得适当的结果。