J'ai écrit une application qui contient une riche zone de texte avec un arrière-plan noir. Par conséquent, je dois écrire dedans en utilisant du texte blanc. Tout cela fonctionne bien en mettant la couleur avant au blanc. Si je copie cependant du texte de Word qui est noir dans ma zone de texte, ce texte reste noir.Modifier la couleur du texte existant
Je dois changer la couleur de ce texte. Voilà donc ce que j'ai essayé jusqu'à présent: (la zone de texte est nommé txtMessage)
txtMessage.ForeColor = Color.White;
qui n'a pas d'effet sur le texte noir existant bien.
Alors j'ai essayé ceci:
private void txtMessage_TextChanged(object sender, EventArgs e)
{
int s = txtMessage.SelectionStart;
txtMessage.SelectAll();
txtMessage.SelectionColor = Color.White;
txtMessage.Select(s, 0);
}
en principe fonctionne très bien mais bien sûr, chaque fois que je modifier le texte dans la zone de texte (ne pas copier quelque chose là-dedans, mais simplement taper) le tout est exécuté avec Chaque lettre que je tape entraîne un scintillement (je suppose que tout est sélectionné puis désélectionné à chaque fois).
Alors est-ce que quelqu'un a une suggestion pour résoudre ce problème avec élégance?
Merci beaucoup.
Quelle version de .NET ciblez-vous? Juste testé sur le ciblage VS2010 .NEt 4.0 Client Profile et copier/coller du texte noir à partir de Word rester blanc dans le contrôle RichTextBox même avec un arrière-plan noir et la couleur blanche spécifiée. – Sevenate
Le plus récent je suppose. J'utilise VS2012 et mon ordinateur portable est assez nouveau. – tomet