Изменить цвет всех найденых слов в RichTextBox - C#
Формулировка задачи:
Доброго дня всем. Такая проблема, казалось бы пустяковая - в RichTextBox у определенных слов нужно поменять цвет. Был выбран такой способ:
Но цвет меняется только у первого вхождения.
Кто может предложить эффективный способ сменить цвет у всех вхождений?
Листинг программы
- string[] error = new string[3];
- error[0] = @"Не совпадают даты:";
- error[1] = @"Не сходятся даты в файле:";
- error[2] = @"Не сходятся значимые даты в файле:";
- foreach (string t in error)
- {
- if (Regex.IsMatch(richTextBoxforMessag.Text, t))
- {
- int startPosition = richTextBoxforMessag.Find(t);
- richTextBoxforMessag.SelectionStart = startPosition;
- richTextBoxforMessag.SelectionLength = t.Length;
- richTextBoxforMessag.SelectionColor = Color.Red;
- }
- }
Решение задачи: «Изменить цвет всех найденых слов в RichTextBox»
textual
Листинг программы
- string regExpr = @"Не совпадают даты:|Не сходятся даты в файле:|Не сходятся значимые даты в файле:";
- foreach (Match m in Regex.Matches(richTextBoxforMessag.Text, regExpr))
- {
- richTextBoxforMessag.SelectionStart = m.Index;
- richTextBoxforMessag.SelectionLength = m.Length;
- richTextBoxforMessag.SelectionColor = Color.Red;
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д