example ejemplo c# winforms richtextbox

c# - ejemplo - richtextbox html



Cambiar el color del texto dentro de WinForms RichTextBox (2)

Esta pregunta ya tiene una respuesta aquí:

Tengo un RichTextBox al que escribo una cadena cada vez que hago clic en un botón de Formulario. Cada cuerda comienza con la cadena "Largo" o "Corto" y termina con una nueva línea. Cada vez que agrego una cadena, se agrega a la parte inferior de RichTextBox. Me gustaría colorear cada línea roja si se trata de "Largo" y azul si comienza con "Corto". ¿Cómo puedo hacer esto?


Claro, entonces lo que puedes hacer es usar las propiedades SelectionStart, SelectionLength y SelectionColor para lograr esto. Funciona bastante bien.

Echa un vistazo a esta página para obtener información sobre estas propiedades.

Puede conocer la longitud del texto de RichTextBox y colorearlo a medida que avanza estableciendo la propiedad SelectionStart en la longitud actual, obtenga la longitud de la cadena que va a adjuntar, establezca SelectionLength y luego establezca SelectionColor según corresponda. Enjuague y repita para cada cuerda agregada.

int length = richTextBox.TextLength; // at end of text richTextBox.AppendText(mystring); richTextBox.SelectionStart = length; richTextBox.SelectionLength = mystring.Length; richTextBox.SelectionColor = Color.Red;

Algo como eso. Así es como lo recuerdo funcionando.


Estaba haciendo esto en un programa que estaba escribiendo. Estaba haciendo algo así como @itsmatt, pero me siento un poco más simple. Puede simplemente establecer el Selectioncolor y desde ese punto en el RichTextBox será ese color hasta que lo cambie a algo más. Si está probando cada línea, esto parece funcionar bien y es fácil.

if(myString == "Long") { richTextBox.SelectionColor = Color.Red; } else { richTextBox.SelectionColor = Color.Green } richTextBox.AppendText(myString);