Comment modifier la couleur d'arrière-plan d'un contrôle ListView en C# lorsque le contrôle est désactivé? La couleur d'une zone de texte peut être changée quand elle est désactivée mais quand une vue de liste est désactivée elle devient grise et nous ne pouvons pas lui appliquer de couleur. Donc, est-il possible de changer la couleur d'arrière-plan du contrôle ListView? ??Modification de la couleur d'arrière-plan de la liste de contrôle C# en cas de désactivation
0
A
Répondre
1
J'ai essayé de surcharger OnPaint
, OnPaintBackground
mais le BackColor
n'a toujours pas changé. Même WM_PAINT
peut le modifier, mais l'arrière-plan de l'élément n'est pas identique à la vue de liste BackColor. J'avais pensé à cette solution avant bien qu'il soit juste une sorte de bidouille, mais il semble être la seule solution de travail, l'idée est d'utiliser un Background Image
à la place:
Bitmap bm = new Bitmap(listView1.ClientSize.Width, listView1.ClientSize.Height);
Graphics.FromImage(bm).Clear(listView1.BackColor);
listView1.BackgroundImage = bm;
Si vous voulez créer votre propre ListView
qui prend en charge BackColor invalidée, voici la classe:
public class MyListView : ListView {
public override Color BackColor {
get { return base.BackColor;}
set {
base.BackColor = value;
if(BackgroundImage == null){
Bitmap bm = new Bitmap(1,1);
bm.SetPixel(0,0,value);
BackgroundImage = bm;
BackgroundImageTiled = true;
}
}
}
public override Image BackgroundImage {
get { return base.BackgroundImage; }
set {
base.BackgroundImage = value;
if(value == null){
Bitmap bm = new Bitmap(1,1);
bm.SetPixel(0,0,BackColor);
BackgroundImage = bm;
BackgroundImageTiled = true;
}
}
}
}
Si quelqu'un a une autre solution, je voudrais savoir aussi.
Questions connexes
- 1. Couleur d'arrière-plan de l'élément modifiée en cas de désactivation
- 2. C#: modification de la couleur de la ligne de liste?
- 3. C# cas de contrôle de la liste <Control>
- 4. Définition/Réglage de la couleur de JComboBox BasicArrowButton en cas de désactivation
- 5. Modification de la couleur de l'en-tête de contrôle de liste MFC
- 6. C#: Modification de la liste
- 7. Modification de la couleur de l'étiquette en C#, WPF, MVVM
- 8. Modification de la couleur des lignes de la liste SharePoint
- 9. Modification de la couleur du texte de la liste extensible
- 10. Modification de la couleur de toutes les étiquettes après la désactivation de l'image
- 11. Modification de la couleur de la liste avec css
- 12. Désactivation de la réactivité lors de la modification du champ
- 13. Modification de la couleur de fond d'UltraCalenderCombo
- 14. Android: Modification de la couleur du texte en mode Liste
- 15. MFC: Modification de la couleur de CEdit
- 16. Modification de la liste de contrôle d'accès de clé de Registre, modification d'une valeur, puis modification
- 17. Désactivation/modification de la prédiction Eclipse
- 18. Modification de la couleur d'un contrôle d'édition dans WINCE (win32)
- 19. Modification de la couleur de la bordure de la zone de texte en cas d'échec de la validation
- 20. Modification de la couleur de la police en formatage conditionnel
- 21. Modification d'une couleur en fonction de la couleur de l'iPhone
- 22. Modification de la couleur d'arrière-plan d'une étiquette en C#
- 23. Modification de la couleur d'arrière-plan de la liste en fonction de la valeur xamarin xaml
- 24. Modification de la couleur de la couleur d'UIBarButtonItems dans UIActivityViewController
- 25. Modification de la couleur d'une ligne dans la liste déroulante
- 26. Modification Liste de la liste de la liste en Python
- 27. Modification de la couleur d'arrière-plan dans la liste déroulante
- 28. Modification de la couleur de base de données en arrière-plan à l'aide de la zone de liste déroulante C#
- 29. Alertes des options de liste déroulante en cas de modification
- 30. Modification de la couleur Texbox
J'ai pris une approche différente.J'ai juste désactivé les événements sur la liste (glisser, cliquer sur l'événement) sur l'ensemble d'une propriété boolique indiquant de le désactiver.Alors le listview ne devient pas gris et aussi la fonctionnalité comme glisser déposer , cliquez sur sont tous désactivés. – Sujay