Я знаю, что у стилей есть атрибут, позволяющий/избегающий изменения текста, к которому они применяются:
SCI_STYLESETCHANGEABLE(целочисленный стиль, логическое значение, изменяемое)
Однако в документации указано, что это экспериментальный и не полностью реализованный атрибут стиля, что, по-видимому, не готово к работе.
Я думаю, что есть другая альтернатива, использующая Индикаторы:
Чтобы защитить диапазон текста, мы могли бы применить к нему специальный индикатор и в событии нажатия клавиши определить del & backspace. Если символ, который следует за текущей позицией (позиция каретки) в случае del или предшествующий текущей позиции в регистре backspace, имеет этот индикатор, то мы должны отменить событие и не стирать текст.
Какой из этих двух вариантов лучше? Есть другой лучший способ?
Примечание. ScintillaNet основан на Scintilla, и я предполагаю, что обширная документация последней действительна для обоих.