Au début je cherchait à mettre des images dans une CheckListBox.
Comme le contrôle CheckedListBox prend uniquement la propriété DrawMode.Normal en charge, il suffisait de prendre une ListBox normal et de rajouter la gestion des CheckBox puis les image et une personalisation avec des dégradé, couleurs, police ...
Dans l'application d'example, ca liste les dossiers et les fichiers de la racine du disque ou se trouve l'application.