J'ai du code pour modifier le comportement de la listbox. Je peux changer la couleur du texte, mais je suis incapable de changer la couleur de l'arrière-plan de chaque ligne.C# Listbox.DrawItem pour colorier chaque ligne
C'est dans une boucle pour chacun de mes lignes
LBLines est un tableau de magasin de chaîne dans une variable globale
if (LBLines[e.Index] != "None")
{
e.Graphics.FillRectangle(new SolidBrush(Color.FromName(LBLines[e.Index])),
e.Bounds.X,e.Bounds.Y,e.Bounds.Width,e.Bounds.Height);
}
Cela couleur toutes les lignes de la même couleur, même celles qui sont énumérées comme "Aucun", tu ce dont j'ai besoin est qu'ils restent la même couleur que la couleur de fond par défaut.
EDIT: Comparaison n'est pas le problème, le problème vient de l'e.Graphics.FillRectangle. Il semble colorer TOUS les espaces lignes, indépendamment de celui que je dessine.
EDIT2: Code modifié pour montrer que h était égal à e.Index
Je vérifierais pour vous assurer que vous faites une comparaison correcte sur LBLines [h]! = "None" first' –