Principales respuestas
Crear un modo comentarios

Pregunta
-
Hola a Todos.
Hoy quería preguntar sobre como hacer que al escribir una comilla simple (') en un RichTextBox, se cambie el color de la linea que le sigue a la comilla simple, pero que no siga del mismo color durante el resto del RichTextBox, es decir, algo parecido a escribir un comentario en Visual Basic o Visual Studio. Por lo que necesitaría que me enviaran el código.
Gracias de antemano.
Respuestas
-
Basándote en el ejemplo que apuntaba Norberto, podrías hacer algo así:
Private Sub RichTextBox1_TextChanged(sender As Object, e As EventArgs) Handles RichTextBox1.TextChanged Dim prevStart = RichTextBox1.SelectionStart Dim prevLength = RichTextBox1.SelectionLength For i As Integer = 0 To RichTextBox1.Lines.Length - 1 Dim quoteIndex As Integer = RichTextBox1.Lines(i).IndexOf("'"c) If quoteIndex >= 0 Then Dim start As Integer = RichTextBox1.GetFirstCharIndexFromLine(i) + quoteIndex + 1 Dim length As Integer = RichTextBox1.Lines(i).Length - quoteIndex RichTextBox1.SelectionStart = start RichTextBox1.SelectionLength = length RichTextBox1.SelectionColor = Color.Green End If Next RichTextBox1.SelectionStart = prevStart RichTextBox1.SelectionLength = prevLength End Sub
Píldoras .NET
Artículos, tutoriales y ejemplos de código .NETPíldoras JS
Artículos, tutoriales y ejemplos de código JavaScript, HTML5, CSS3, ...- Marcado como respuesta Pablo Gonzalez Calderon lunes, 29 de febrero de 2016 18:09
Todas las respuestas
-
Hola
Revisa el siguiente link.
Trataron de hacer algo similar a lo que tu necesitas.
Saludos
-
-
Basándote en el ejemplo que apuntaba Norberto, podrías hacer algo así:
Private Sub RichTextBox1_TextChanged(sender As Object, e As EventArgs) Handles RichTextBox1.TextChanged Dim prevStart = RichTextBox1.SelectionStart Dim prevLength = RichTextBox1.SelectionLength For i As Integer = 0 To RichTextBox1.Lines.Length - 1 Dim quoteIndex As Integer = RichTextBox1.Lines(i).IndexOf("'"c) If quoteIndex >= 0 Then Dim start As Integer = RichTextBox1.GetFirstCharIndexFromLine(i) + quoteIndex + 1 Dim length As Integer = RichTextBox1.Lines(i).Length - quoteIndex RichTextBox1.SelectionStart = start RichTextBox1.SelectionLength = length RichTextBox1.SelectionColor = Color.Green End If Next RichTextBox1.SelectionStart = prevStart RichTextBox1.SelectionLength = prevLength End Sub
Píldoras .NET
Artículos, tutoriales y ejemplos de código .NETPíldoras JS
Artículos, tutoriales y ejemplos de código JavaScript, HTML5, CSS3, ...- Marcado como respuesta Pablo Gonzalez Calderon lunes, 29 de febrero de 2016 18:09
-