C# Цветные линии в расширенном текстовом поле от начала символа "#"

Итак, я работаю над "редактором кода" и хочу, чтобы комментарии выглядели красочно. У меня есть решение, но оно плохое. Проблемы как это происходит:

Я новичок в C#, так что прости меня за мои глупые ошибки Мой код:

        private void richTextBox1_TextChanged(object sender, EventArgs e) {
        int index = richTextBox1.SelectionStart;
        int line = richTextBox1.GetLineFromCharIndex(index);
        this.CheckKeyword("#", Color.Green, 0);
        if(richTextBox1.Lines[line].StartsWith("#")) {
            richTextBox1.Select(index, richTextBox1.Lines[line].Length);
            richTextBox1.SelectionColor = Color.Green;
            richTextBox1.Select(index, 0);
            return;
        }
        this.CheckKeyword("while", Color.Purple, 0);
        this.CheckKeyword("if", Color.Green, 0);
    }

РЕДАКТИРОВАТЬ: http://pastebin.com/aztYGqf9 Используя этот код сейчас, все работает, за исключением того, что новые строки могут быть затронуты, чтобы быть зеленым. http://prnt.sc/dsbpvu

0 ответов

Другие вопросы по тегам