Einzelnen Beitrag anzeigen

Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.606 Beiträge
 
#1

Bild lesen blockiert Datei?

  Alt 30. Mai 2007, 08:28
Folgendes Problemchen: Ich habe eine Funktion, die ein Bild lädt:

Code:
private void btnLoadImage_Click(object sender, EventArgs e)
{
  String basedir = FW.Instance.SysParams["Stammdaten.Pfade.Bilder"].Value;
  dlgOpenFile.InitialDirectory = basedir;

  if (dlgOpenFile.ShowDialog() == DialogResult.OK
    && Path.GetDirectoryName(dlgOpenFile.FileName) == basedir)
  {
    edFilename.Text = Path.GetFileName(dlgOpenFile.FileName);
    _image = new Bitmap(dlgOpenFile.FileName);
    btnPreview.Enabled = true;
  }
}

private void btnPreview_Click(object sender, EventArgs e)
{
  LabelPreviewHelper.ShowPreview(_image);
}
Letztere macht nix anderes, als das Image auf ein Formular zu patschen und es anzuzeigen.

Problematisch ist nun, dass das die Datei komplett blockiert. Will heissen selbst wenn ich da aufräume und das Image explizit freigebe, kann ich die Datei dennoch nicht umbennenen oder gar löschen, bis ich die Anwendung beende. Das finde ich etwas doof. Spätestens nachdem ich das Formular schliesse sollte die Datei wieder freigegeben werden. Was muss ich da noch machen?
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat