Bonjour,

Ainsi que l'indique mon intitulé, j'ai des difficultés d'affichage d'images dans une listview.

Je souhaiterais associer de manière dynamique des images à une ImageList afin de voir mes images à côté de mes items.Pour cela je procède comme suit :

Images -> new ImageList -> LargeImageList/SmallImageList-> Ma listView

Ma méthode est donc de créer un nouvel item avec une petite et une image large.

voici le code associé, qui à priori est correct...Quand je débug, l'espace correspondant à l'image apparait mais pas l'image

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
// initialiser les ImagesLists avec les Bitmaps
// pour les Large Icon
 
                string[] iconsL = Directory.GetFiles(@"C:\","*.bmp");
                foreach (string icoL in iconsL)
                {
                  imageList1.Images.Add(Image.FromFile(icoL));
                }
 
                foreach (string keysL in imageList1.Images.Keys)
                {
                    Image oImageL = imageList1.Images[keysL];
                }
 
//Pour les Small Icon
 
                string[] iconsS = Directory.GetFiles(@"C:\","*.bmp");
                foreach (string icoS in iconsS)
                {
                    imageList2.Images.Add(Image.FromFile(icoS)); 
                }
                foreach (string keysS in imageList2.Images.Keys)
                {
                    Image oImageS = imageList2.Images[keysS];
                }
 
//Assigner les ImagesLists au ListView
listView1.LargeImageList = imageList1;
listView1.SmallImageList = imageList2;
en désespoir de cause j'ai tenté à partir d'un FromStream...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
ImageList ListeLarge = new ImageList();
ImageList ListePetite = new ImageList();
 
FileStream PetiteStream = new FileStream(@"C:\Petite.bmp", FileMode.Open);
FileStream LargeStream =  new FileStream(@"C:\Large.bmp", FileMode.Open);
 
 
Image pti= Image.FromStream(PetiteStream);
ListePetite.Images.Add(pti);
 
Image larg = Image.FromStream(LargeStream);
ListeLarge.Images.Add(larg); 
 
listView1.LargeImageList = ListeLarge;
listView1.SmallImageList = ListePetite;
 
LargeStream.Close();
PetiteStream.Close();
J'ai même tenté la méthode msdn...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
ImageList ListeLarge = new ImageList();
ImageList ListeSmall = new ImageList();
 
ListeSmall.Images.Add(Bitmap.FromFile(@"C:\PetiteImage.bmp"));
ListeLarge.Images.Add(Bitmap.FromFile(@"C:\GrandeImage.bmp"));
 
listView1.LargeImageList = ListeLarge;
listView1.SmallImageList = ListeSmall;
Mais rien n'y fait...toujours pas d'images en vue

Je vous remercie d'avance pour votre aide et votre compréhension car c'est mon premier post sur ce forum et j'espère avoir été aussi claire que possible(et surtout avoir posté au bon endroit)