2009-02-23 17 views
9

Soy nuevo en Windows Forms. Estoy usando VS 2008, C# para escribir un RichTextBox. Quiero ser capaz de colorear cada línea con un color diferente a medida que escribo en el RichTextBox. ¿Puede alguien señalarme muestras? Gracias Líneas seleccionadas de color de RichTextBox

foreach (string file in myfiles) 
{ 
    // As I process my files 
    // richTextBox1.Text += "My processing results"; 
    if(file == "somefileName") 
    { 
    // Color above entered line or enter new colored line 
    } 

} 

Respuesta

13

Set SelectionColor antes de añadir, algo como:

int line = 0; 
    foreach (string file in myfiles) 
    { 
     // Whatever method you want to choose a color, here 
     // I'm just alternating between red and blue 
     richTextBox1.SelectionColor = 
      line % 2 == 0 ? Color.Red : Color.Blue; 

     // AppendText is better than rtb.Text += ... 
     richTextBox1.AppendText(file + "\r\n"); 
     line++; 
    } 
+0

+1. Los usuarios de VB.Net deben recordar que \ r \ n se está escapando en C#. Escriba .AppendText (file & vbCrLf) en VB – smirkingman

+0

Como se menciona en el comentario del código, usar + = parece restablecer todo el color del texto que ya estaba configurado en el cuadro, por lo que el método AppendText es el que hizo el truco. – kad81

Cuestiones relacionadas