Procedura: aggiungere o rimuovere immagini tramite il componente ImageList Windows Form

Il componente Windows Form ImageList viene in genere popolato con immagini prima di essere associato a un controllo . Tuttavia, è possibile aggiungere e rimuovere immagini dopo aver associato l'elenco di immagini a un controllo .

Nota

Quando si rimuovono immagini, verificare che la ImageIndex proprietà di tutti i controlli associati sia ancora valida.

Per aggiungere immagini a livello di codice

  • Usare il Add metodo della proprietà dell'elenco di Images immagini.

    Nell'esempio di codice seguente il percorso impostato per il percorso dell'immagine è la cartella Documenti . Questo percorso viene usato perché è possibile presupporre che la maggior parte dei computer che eseguono il sistema operativo Windows includerà questa cartella. La scelta di questa posizione consente anche agli utenti con livelli di accesso minimi al sistema di eseguire l'applicazione in modo più sicuro. Nell'esempio di codice seguente è necessario disporre di un modulo con un ImageList controllo già aggiunto.

    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);  
       }  
    

Per aggiungere immagini con un valore chiave.

  • Utilizzare uno dei Add metodi della proprietà dell'elenco Images di immagini che accetta un valore di chiave.

    Nell'esempio di codice seguente il percorso impostato per il percorso dell'immagine è la cartella Documenti . Questo percorso viene usato perché è possibile presupporre che la maggior parte dei computer che eseguono il sistema operativo Windows includerà questa cartella. La scelta di questa posizione consente anche agli utenti con livelli di accesso minimi al sistema di eseguire l'applicazione in modo più sicuro. Nell'esempio di codice seguente è necessario disporre di un modulo con un ImageList controllo già aggiunto.

    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);  
}  

Per rimuovere tutte le immagini a livello di codice

  • Usare il Remove metodo per rimuovere una singola immagine

    -O-

    Usare il Clear metodo per cancellare tutte le immagini nell'elenco di immagini.

    ' 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();  

Per rimuovere immagini in base alla chiave

  • Usare il RemoveByKey metodo per rimuovere una singola immagine in base alla relativa chiave.

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

Vedi anche