Да. Предполагая, что у вас есть действительный
ITextBuffer buffer;
Вам просто нужно получить ITextEdit, например:
var textEdit = buffer.CreateEdit();
Тогда вы можете:
textEdit.Delete(...)
textEdit.Insert(....)
и когда вы закончите, вы должны
textEdit.Apply();
или
textEdit.Cancel();
Если вы не примените или не отмените свои изменения, другие изменения не будут разрешены в буфере .... поэтому вы, вероятно, захотите обернуть свои изменения в попытке ... наконец, чтобы исключение не закрылось твой редактор. Все ваши изменения будут сгруппированы, и одна отмена отменит их все.
Надеюсь, это поможет.