Il mettra en évidence le texte dans une ligne donnée dans un RichTextBox
si WordWrap
est désactivé:
void highLightALine(RichTextBox rtb, int line, Color hiLight)
{
int i1 = rtb.GetFirstCharIndexFromLine(line);
int i2 = rtb.GetFirstCharIndexFromLine(line + 1);
if (i2 < 0) i2 = rtb.Text.Length;
rtb.SelectionStart = i1;
rtb.SelectionLength = i2 - i1;
rtb.SelectionBackColor = hiLight;
}
Remarque que si WordWrap
est vrai, il mettra toujours en surbrillance la ligne mais seulement dans la mesure où elle est visible. Sa continuation sur la ligne suivante ne sera pas modifiée.
Notez également que seulement Text
peut être mis en surbrillance. L'espace vide de fin ne peut pas être mis en surbrillance afaik. Here est un exemple d'essayer de dessiner un propriétaire d'une sous-classe RTB ..
Est-ce WPF ou Windows Forms ou Windows Universal? –
si c'est winforms oui c'est possible. pouvez-vous nous montrer ce que vous avez essayé ..? aussi faire une simple recherche google et vous trouverez des tonnes de réponses .. http://stackoverflow.com/questions/14765947/highlight-specific-text-in-richtextbox – MethodMan
oui c'est Windows Forms Application, jusqu'à présent, je n'ai pas essayez vraiment quelque chose. Je suis nouveau à C# –