我有一个RichTextBox,在单击表单按钮时,我会向其写入一个字符串。 每个字符串以字符串“Long”或“Short”开头并以换行符结尾。 每次添加字符串时,它都会附加到RichTextBox的底部。 我想如果字符串以“Long”开头就将其颜色设置为红色,如果以“Short”开头则将其颜色设置为蓝色。如何实现这个功能?
我有一个RichTextBox,在单击表单按钮时,我会向其写入一个字符串。 每个字符串以字符串“Long”或“Short”开头并以换行符结尾。 每次添加字符串时,它都会附加到RichTextBox的底部。 我想如果字符串以“Long”开头就将其颜色设置为红色,如果以“Short”开头则将其颜色设置为蓝色。如何实现这个功能?
int length = richTextBox.TextLength; // at end of text
richTextBox.AppendText(mystring);
richTextBox.SelectionStart = length;
richTextBox.SelectionLength = mystring.Length;
richTextBox.SelectionColor = Color.Red;
类似这样。我记得它是这样工作的。
我刚刚在写的一个程序中做了这件事情。我像@itsmatt一样做了一些工作,但我感觉我做得更简单。你只需要设置Selectioncolor
,从那时起RichTextBox
会保持该颜色,直到你将其更改为其他颜色。如果你正在测试每一行,这似乎很有效且容易。
if(myString == "Long")
{
richTextBox.SelectionColor = Color.Red;
}
else
{
richTextBox.SelectionColor = Color.Green
}
richTextBox.AppendText(myString);
CODE
。有没有一些快速解决方案,比如一些免费/开源的控件(可能是NuGet管理器),可以很好地完成格式化工作?