Freigeben über


Vorgehensweise: Hinzufügen oder Entfernen von Bildern mit der Windows Forms ImageList-Komponente

Die Komponente "Windows Forms ImageList" wird in der Regel mit Bildern aufgefüllt, bevor sie einem Steuerelement zugeordnet ist. Sie können jedoch Bilder hinzufügen und entfernen, nachdem Sie die Bildliste einem Steuerelement zugeordnet haben.

Anmerkung

Stellen Sie beim Entfernen von Bildern sicher, dass die ImageIndex Eigenschaft aller zugehörigen Steuerelemente weiterhin gültig ist.

So fügen Sie Bilder programmgesteuert hinzu

  • Verwenden Sie die Add Methode der Images Eigenschaft der Bildliste.

    Im folgenden Codebeispiel ist der Pfad für den Speicherort des Bilds der Ordner "Eigene Dokumente". Dieser Speicherort wird verwendet, da Sie davon ausgehen können, dass die meisten Computer, auf denen das Windows-Betriebssystem ausgeführt wird, diesen Ordner enthalten. Wenn Sie diesen Speicherort auswählen, können Benutzer, die minimale Systemzugriffsebenen haben, die Anwendung sicherer ausführen. Damit das folgende Codebeispiel funktioniert, müssen Sie ein Formular haben, dem ein ImageList-Steuerelement bereits hinzugefügt wurde.

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

Fügen Sie Bilder mit einem Schlüsselwert hinzu.

  • Verwenden Sie eine der Add Methoden der Images-Eigenschaft der Bildliste, die einen Schlüsselwert verwendet.

    Im folgenden Codebeispiel ist der Pfad für den Speicherort des Bildes der Ordner "Eigene Dateien". Dieser Speicherort wird verwendet, da Sie davon ausgehen können, dass die meisten Computer, auf denen das Windows-Betriebssystem ausgeführt wird, diesen Ordner enthalten. Wenn Sie diesen Speicherort auswählen, können Benutzer, die minimale Systemzugriffsebenen haben, die Anwendung sicherer ausführen. Das folgende Codebeispiel setzt voraus, dass Sie ein Formular mit einem bereits hinzugefügten ImageList-Steuerelement haben.

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

So entfernen Sie alle Bilder programmgesteuert

  • Verwenden Sie die Remove-Methode zum Entfernen eines einzelnen Bildes.

    -oder-

    Verwenden Sie die Clear-Methode, um alle Bilder in der Bildliste zu löschen.

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

So entfernen Sie Bilder anhand eines Schlüssels

  • Verwenden Sie die RemoveByKey-Methode, um ein einzelnes Bild anhand des Schlüssels zu entfernen.

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

Siehe auch