Я не думаю, что это связано с шаблоном дизайна, но я бы посмотрел на то, что вы спросили, в качестве пользовательского элемента управления
как вы знаете, элемент управления меткой будет отображаться как диапазон, поэтому начните создавать новую пользовательскую метку элемента управления, например, наследовать ее от функций элемента управления метками и функций creta внутри него, чтобы принимать местоположения (начальный индекс и длину) и цвет (красный, желтый )
скажем, у нас есть эта функция внутри элемента управления
private string AddSpan(string originalString, int[] location, string color)
{
string old = originalString.Substring(location[0], location[1]);
string newStr = string.Format("<span id= '{0}' color='{1}'>", "idUWant", color);
originalString = originalString.Replace(old, newStr);
return originalString ;
}
Оригинальный текст: Книга будет демонстрироваться на приеме по Даунинг-стрит, дом 11
и примет участие в ключевых медицинских
расположение - простой двумерный массив целых чисел, первый будет начальным индексом, а второй - длиной, цветовой параметр - цветной строкой
я думаю, что лучше создать контейнер данных для параметров, например, класс, содержащий только несколько свойств, таких как startindex, length и color, чтобы было легче читать и поддерживать