Это означает, что наиболее переносимым способом определения реализации методов классов шаблонов является определение их внутри определения класса шаблона.
template < typename ... >
class MyClass
{
int myMethod()
{
// Not just declaration. Add method implementation here
}
};
Конечно, вы можете использовать для этого свойства SelectionStart, SelectionLength и SelectionColor. Работает неплохо.
Посетите эту страницу для получения информации об этих свойствах.
Вы можете узнать длину текста RichTextBox и раскрасить его по мере продвижения, установив для свойства SelectionStart текущую длину, получив длину строки, которую вы собираетесь добавить, установите SelectionLength и затем установите SelectionColor соответствующим образом. . Промойте и повторите для каждой добавленной струны.
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);