Удалить и заменить последнюю строку в ScintillaNET

Мне нужен фрагмент кода, чтобы удалить последнюю строку элемента управления ScintillaNET и добавить к ней строку. Я пробовал это, но не работал:

        scintilla1.GoTo.Line(scintilla1.Lines.Count);
        int nowPosition = scintilla1.Caret.Position;
        scintilla1.Text.Remove(nowPosition);

person CodeEmpower    schedule 18.03.2013    source источник
comment
ссылались ли вы на веб-сайт ScintillaNet   -  person MethodMan    schedule 19.03.2013
comment
Я не нашел ничего полезного в этом случае!   -  person CodeEmpower    schedule 19.03.2013


Ответы (1)


Извините за опоздание. Я нашел этот пост, и мне было грустно не видеть ничего хорошего (не по вашей вине), поэтому я продолжал искать и нашел это:

((INativeScintilla)scintilla).DeleteBack()

Это будет имитировать нажатие клавиши Backspace (удалить 1 символ слева от курсора). Это не красиво, но это может сделать работу за вас. Работал для меня :)

Для вас вы можете сохранить позицию курсора в int, установить ее в конец, «возвратить» все символы, которые вы хотите, а затем установить ее обратно.

person Sellorio    schedule 16.04.2013
comment
Я столкнулся с повреждением памяти при использовании этого метода. Однако альтернатив не нашел ›.‹ - person Sellorio; 20.05.2013