C#-RichTextBox更改某些单词的颜色
可能重复:C#-RichTextBox更改某些单词的颜色,c#,richtextbox,C#,Richtextbox,可能重复: 我没有任何代码可以显示,因为我不知道:(。我有一个服务器,可以输出带有标记的信息。例如: 15:44 [INFO] Loaded Properties 15:45 [ERROR] Properties not found 如何查看richtextbox并使所有错误标记变为红色、信息标记变为绿色等?我认为这应该满足您的要求: for(int i=0; i<rtb.Lines.Length; i++) { string text = rtb.Lines[i];
我没有任何代码可以显示,因为我不知道:(。我有一个服务器,可以输出带有标记的信息。例如:
15:44 [INFO] Loaded Properties
15:45 [ERROR] Properties not found
如何查看richtextbox并使所有错误标记变为红色、信息标记变为绿色等?我认为这应该满足您的要求:
for(int i=0; i<rtb.Lines.Length; i++)
{
string text = rtb.Lines[i];
rtb.Select(rtb.GetFirstCharIndexFromLine(i), text.Length);
rtb.SelectionColor = colorForLine(text);
}
private Color colorForLine(string line)
{
if(line.Contains("[INFO]", StringComparison.InvariantCultureIgnoreCase) return Color.Green;
if(line.Contains("[ERROR]", StringComparison.InvariantCultureIgnoreCase) return Color.Red;
return Color.Black;
}
for(int i=0;i您可以执行以下操作:
//will select characters form index 0 to 9
richTextBox1.Select(0, 10);
//will set the characters from 0 to 9 to red
richTextBox1.SelectionColor = Color.Red;
我在帖子中建议的答案是重复的,看起来这是一种很好的方法,可以做你想做的事情。谢谢,但是正则表达式不起作用-名称空间是什么?System.Text.RegularExpressions;右键单击该方法,选择resolve.VS将为你弹出它。@AlexOgden try with包含而不是StartWith
try在colorForLine中设置断点,并查看条件是否满足hit@L.B感谢您的更正,我更新了代码。其他答案已经显示+它是SelectionColor
而不是SelectionColor
@eddardstack-或者只是英语