Je ne pense pas que ce soit un bug. La profondeur de couleur ImageList doit être définie sur 32 bits et vous devez utiliser des styles visuels. Si les styles visuels de l'application sont activés, WinForms utilise la version 6.0 des contrôles communs Windows, qui prend en charge la transparence alpha. Dans le cas contraire, il utilisera la version précédente qui ne prend pas en charge la transparence alpha, et rendra incorrectement les images ARGB avec un halo bleu. Si vous avez besoin d'une solution de contournement, vous pouvez essayer de créer de nouvelles bitmaps de la même taille, en les remplissant avec la BackColor de ListView, en créant un objet Graphics sur le bitmap et en dessinant votre image ARGB sur le bitmap. Ensuite, vous pouvez insérer ces bitmaps pré-blened dans l'ImageList. Si vous faites cela, cependant, la sélection aura l'air drôle sur l'icône dans le ListView. Une autre solution consiste à accéder directement aux données bitmap (à l'aide de LockBits()) et à mélanger manuellement tous les pixels semi-transparents, ce qui permet de rendre les images correctement et de les rendre sensiblement identiques à celles qui sont sélectionnées. .