Hallo,
ich möchte gerne einen String, in einer RichTextBox, ab einem Hashtag blau färben.
Bsp.: Dies ist ein Text #test noch ein Text.
#test <- soll nun blau sein.
Das habe ich bereits so versucht:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
| private void richTextBoxBeschreibung_TextChanged(object sender, EventArgs e) { for (int i = 0; i < richTextBoxBeschreibung.Lines.Length; i++) { if (richTextBoxBeschreibung.Text.Contains("#")) { string text = richTextBoxBeschreibung.Lines[i]; richTextBoxBeschreibung.Select(richTextBoxBeschreibung.Text.IndexOf("#"), 6); richTextBoxBeschreibung.SelectionColor = colorTicketNr(text); } } } private Color colorTicketNr(string line) { if(line.Contains("#")) return Color.Blue;
return Color.Black; } |
Das Problem ist, dass wenn ich in die Textbox nun etwas eingeben will, er immer zu dem blau-markierten Text springt. Es liegt wohl an diesem select.
Gibt es da noch eine andere Möglichkeit?