Comment : ajouter ou supprimer des images avec le composant ImageList Windows Forms

Le composant Windows Forms ImageList est généralement rempli avec des images avant qu’il ne soit associé à un contrôle. Toutefois, vous pouvez ajouter et supprimer des images après avoir associé la liste d’images à un contrôle.

Remarque

Lorsque vous supprimez des images, vérifiez que la ImageIndex propriété des contrôles associés est toujours valide.

Pour ajouter des images par programmation

  • Utilisez la Add méthode de la propriété de Images la liste d’images.

    Dans l’exemple de code suivant, le chemin d’accès défini pour l’emplacement de l’image est le dossier Mes documents . Cet emplacement est utilisé, car vous pouvez supposer que la plupart des ordinateurs exécutant le système d’exploitation Windows incluront ce dossier. Le choix de cet emplacement permet également aux utilisateurs qui ont des niveaux d’accès système minimaux plus en toute sécurité d’exécuter l’application. L’exemple de code suivant nécessite que vous disposiez d’un formulaire avec un ImageList contrôle déjà ajouté.

    Public Sub LoadImage()  
       Dim myImage As System.Drawing.Image = _  
         Image.FromFile _  
       (System.Environment.GetFolderPath _  
       (System.Environment.SpecialFolder.Personal) _  
       & "\Image.gif")  
       ImageList1.Images.Add(myImage)  
    End Sub  
    
    public void addImage()  
    {  
    // Be sure that you use an appropriate escape sequence (such as the
    // @) when specifying the location of the file.  
       System.Drawing.Image myImage =
         Image.FromFile  
       (System.Environment.GetFolderPath  
       (System.Environment.SpecialFolder.Personal)  
       + @"\Image.gif");  
       imageList1.Images.Add(myImage);  
    }  
    
    public:  
       void addImage()  
       {  
       // Replace the bold image in the following sample
       // with your own icon.  
       // Be sure that you use an appropriate escape sequence (such as
       // \\) when specifying the location of the file.  
          System::Drawing::Image ^ myImage =
             Image::FromFile(String::Concat(  
             System::Environment::GetFolderPath(  
             System::Environment::SpecialFolder::Personal),  
             "\\Image.gif"));  
          imageList1->Images->Add(myImage);  
       }  
    

Pour ajouter des images avec une valeur clé.

  • Utilisez l’une des méthodes de la Add propriété de Images la liste d’images qui prend une valeur clé.

    Dans l’exemple de code suivant, le chemin d’accès défini pour l’emplacement de l’image est le dossier Mes documents . Cet emplacement est utilisé, car vous pouvez supposer que la plupart des ordinateurs exécutant le système d’exploitation Windows incluront ce dossier. Le choix de cet emplacement permet également aux utilisateurs qui ont des niveaux d’accès système minimaux plus en toute sécurité d’exécuter l’application. L’exemple de code suivant nécessite que vous disposiez d’un formulaire avec un ImageList contrôle déjà ajouté.

    Public Sub LoadImage()  
       Dim myImage As System.Drawing.Image = _  
         Image.FromFile _  
       (System.Environment.GetFolderPath _  
       (System.Environment.SpecialFolder.Personal) _  
       & "\Image.gif")  
       ImageList1.Images.Add("myPhoto", myImage)  
    End Sub  
    
public void addImage()  
{  
// Be sure that you use an appropriate escape sequence (such as the
// @) when specifying the location of the file.  
   System.Drawing.Image myImage =
     Image.FromFile  
   (System.Environment.GetFolderPath  
   (System.Environment.SpecialFolder.Personal)  
   + @"\Image.gif");  
   imageList1.Images.Add("myPhoto", myImage);  
}  

Pour supprimer toutes les images par programmation

  • Utiliser la Remove méthode pour supprimer une seule image

    -Ou-

    Utilisez la Clear méthode pour effacer toutes les images de la liste d’images.

    ' Removes the first image in the image list  
    ImageList1.Images.Remove(myImage)  
    ' Clears all images in the image list  
    ImageList1.Images.Clear()  
    
// Removes the first image in the image list.  
imageList1.Images.Remove(myImage);  
// Clears all images in the image list.  
imageList1.Images.Clear();  

Pour supprimer des images par clé

  • Utilisez la RemoveByKey méthode pour supprimer une seule image par sa clé.

    ' Removes the image named "myPhoto" from the list.  
    ImageList1.Images.RemoveByKey("myPhoto")  
    
// Removes the image named "myPhoto" from the list.  
imageList1.Images.RemoveByKey("myPhoto");  

Voir aussi