Разве это не стандартное поведение? Если я выделю текст в Word, выделю его жирным шрифтом, переместу курсор рядом с этим текстом и введите текст, новый текст тоже станет жирным. Я мог бы предположить, что MS заставила поле расширенного текста работать аналогично текстовой области в Word.
Если вы выбираете токен на основе соответствия некоторым критериям, например, для подсветки синтаксиса, не могли бы вы попробовать применить стиль к тексту после курсор находится на расстоянии 1 символа от токена? Например:
SomeToken |
вместо
SomeToken |
, где |
- курсор. Курсор отделен от токена пробелом в первом примере, поэтому, если ваша программа найдет SomeToken
, она получит текстовый диапазон от S
до
(пробел). Я полагаю, что тогда стиль не будет применяться к вновь введенному тексту.
Я признаю, что это всего лишь предположение, и я мог неправильно понять вашу точную ситуацию из описания вашей проблемы. Может пригодиться еще немного кода, в частности упомянутое вами событие TextChanged
или код, который создает текстовый диапазон.