Gewusst wie: Festlegen von Bildern zur Laufzeit (Windows Forms)

Sie können programmgesteuert festlegen, welches Bild von einem PictureBox-Steuerelement in Windows Forms angezeigt wird.

So legen Sie ein Bild programmgesteuert fest

  • Legen Sie die Image-Eigenschaft mit der FromFile-Methode der Image-Klasse fest.

    Im unten stehenden Beispiel wurde als Speicherort für das Bild der Ordner Eigene Dateien festgelegt. Dieser Speicherort wird verwendet, weil vorausgesetzt werden kann, dass die meisten Computer mit einem Windows-Betriebssystem über dieses Verzeichnis verfügen. Dieser Speicherort ermöglicht es auch Benutzern mit minimalen Systemzugriffsberechtigungen, die Anwendung sicher auszuführen. Im unten stehenden Beispiel wird davon ausgegangen, dass einem Formular bereits ein PictureBox-Steuerelement hinzugefügt wurde.

    Private Sub LoadNewPict()
       ' You should replace the bold image 
       ' in the sample below with an icon of your own choosing.
       PictureBox1.Image = Image.FromFile _
       (System.Environment.GetFolderPath _
       (System.Environment.SpecialFolder.Personal) _
       & "\Image.gif")
    End Sub
    
    private void LoadNewPict(){
       // You should replace the bold image 
       // in the sample below with an icon of your own choosing.
       // Note the escape character used (@) when specifying the path.
       pictureBox1.Image = Image.FromFile
       (System.Environment.GetFolderPath
       (System.Environment.SpecialFolder.Personal)
       + @"\Image.gif");
    }
    
    private void LoadNewPict(){
       // You should replace the bold image 
       // in the sample below with an icon of your own choosing.
       pictureBox1.get_Image().FromFile
       (System.Environment.GetFolderPath
       (System.Environment.SpecialFolder.Personal)
       + "\\Image.gif");
    
    private:
       void LoadNewPict()
       {
          // You should replace the bold image 
          // in the sample below with an icon of your own choosing.
          pictureBox1->Image = Image::FromFile(String::Concat(
             System::Environment::GetFolderPath(
             System::Environment::SpecialFolder::Personal),
             "\\Image.gif"));
       }
    

So löschen Sie eine Grafik

  • Geben Sie zuerst den vom Bild verwendeten Speicherplatz frei, und löschen Sie anschließend die Grafik. Wenn es bei der Speicherverwaltung zu Problemen kommt, gibt die Garbage Collection den Speicher zu einem späteren Zeitpunkt frei.

    If Not (PictureBox1.Image Is Nothing) Then
       PictureBox1.Image.Dispose()
       PictureBox1.Image = Nothing
    End If
    
    if (pictureBox1.Image != null) 
    {
       pictureBox1.Image.Dispose();
       pictureBox1.Image = null;
    }
    
    if (pictureBox1->Image != nullptr)
    {
       pictureBox1->Image->Dispose();
       pictureBox1->Image = nullptr;
    }
    

    Tipp

    Weitere Informationen dazu, warum die Dispose-Methode auf diese Weise verwendet werden sollte, finden Sie unter Bereinigen von nicht verwalteten Ressourcen.

    Der Code löscht das Bild selbst dann, wenn eine Grafik zur Entwurfszeit in das Steuerelement geladen wurde.

Siehe auch

Aufgaben

Gewusst wie: Laden eines Bilds mithilfe des Designers (Windows Forms)

Gewusst wie: Ändern der Größe oder Platzierung eines Bildes zur Laufzeit (Windows Forms)

Referenz

Übersicht über das PictureBox-Steuerelement (Windows Forms)

PictureBox

Image.FromFile

Weitere Ressourcen

PictureBox-Steuerelement (Windows Forms)