2015-09-04 1 views
1

Я делаю синтаксический анализатор, поэтому я хочу изменить цвета и шрифты некоторых слов в RichTextBox, но иногда, когда текст слишком длинный, мой richtextbox показывает некоторые выделения , Я хочу изменить их на те же BackColor и ForeColor, что и текущие свойства слова, поэтому пользователь не может заметить это выделение. Как изменить RichTextBox выделенное слово Back и Fore colors?Изменить выделение RichTextBox BackColor и ForeColor

+0

См [Как добавить текст в RichTextBox без прокрутки и потерять выбор?] (Http://stackoverflow.com/a/6550415/719186) – LarsTech

+0

@LarsTech Спасибо! Вот что я просил :)) Работая отлично: P – RAS

ответ

1

Если вы хотите изменить цвет и обратно цвет выделенного текста, попробуйте это (если я правильно понял ваш вопрос правильно)

this.richTextBox1.SelectionColor = Color.Red; 
this.richTextBox1.SelectionBackColor = Color.Blue; 
1

Если вы хотите установить весь текст в richtextbox затем введите

this.richtextbox.SelectAll(); 

А затем следуют с

this.richTextBox1.SelectionColor = Color.Red; 
this.richTextBox1.SelectionBackColor = Color.Blue; 

Как сказал Реза Агайи.

Если вы хотите, чтобы это сделало это автоматически, дважды щелкните значок richtextbox, чтобы создать событие с измененным текстом и поместить код внутри него.

private void richTextBox1_TextChanged(object sender, EventArgs e) 
{ 
     //Remember the cursor position & length 
     int SelectionStart = richTextBox1.SelectionStart; 
     int SelectionLength = richTextBox1.SelectionLength; 

     //Select all text and change color 
     richtextbox1.SelectAll(); 
     richTextBox1.SelectionColor = Color.Red; 
     richTextBox1.SelectionBackColor = Color.Blue; 

     //Select original text 
     richTextBox1.Select(SelectionStart, SelectionLength); 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^