IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Presentation Foundation Discussion :

WPF - chargement image


Sujet :

Windows Presentation Foundation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2011
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2011
    Messages : 56
    Par défaut WPF - chargement image
    Bonjour,

    Je charge une image et je la redimensionne à une certaine taille et je la sauve avec un autre nom avec le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
     
     
    private void PathToPicture()
            {
                String destinationPath = "C:\\Images";
     
                Microsoft.Win32.OpenFileDialog dlg = new Microsoft.Win32.OpenFileDialog();
                dlg.FileName = "Document";
                dlg.DefaultExt = ".jpg";
                dlg.Filter = "JPEG|*.jpg|PNG|*.png|BITMAP|*.bmp|Tous les fichiers (*.*)|*.*"; 
     
                Nullable<bool> result = dlg.ShowDialog();
                string filename= string.Empty;
                if (result == true) 
                    filename = dlg.FileName;
     
                if (!System.IO.Directory.Exists(destinationPath))
                    System.IO.Directory.CreateDirectory(destinationPath);
     
                byte[] buffer = File.ReadAllBytes(filename);
                MemoryStream ms = new MemoryStream(buffer);
     
                BitmapImage bitmap = new BitmapImage();
                bitmap.BeginInit();
                bitmap.StreamSource = ms;
                bitmap.DecodePixelWidth = 300;
                bitmap.EndInit();
                bitmap.Freeze();
     
                BitmapEncoder imgEncoder = new JpegBitmapEncoder();
                imgEncoder.Frames.Add(BitmapFrame.Create(bitmap));
     
                destinationPath = destinationPath + "\\" + DateTime.Now.ToString() + ".jpg";
     
                FileStream fs = new FileStream(destinationPath, FileMode.Create);
                imgEncoder.Save(fs);
     
                newEquipment.pPicturePath = destinationPath;
     
                ms.Close();
                fs.Flush();
                fs.Close();
     
                //ms.Dispose();
                //fs.Dispose();
            }
    Cependant lorsque j'essaie ailleurs dans le code ré-ouvrir l'image, j'ai un message d'erreur m'indiquant que le fichier est déjà en cours d'utilisation.

    J'ai essayé de tout fermer ce qui me semblait nécessaire, mais je ne sais pas comment faire pour fermer le fichier définitivement.

    Merci de votre aide.

  2. #2
    Membre éclairé Avatar de koyot3
    Inscrit en
    Avril 2007
    Messages
    693
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 693
    Par défaut
    Salut,

    Je pense que c'est ton newEquipment.pPicturePath = destinationPath; qui indique que ton fichier est en cours d'utilisation.

    Déplace le après avoir vider la mémoire

    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     ms.Close();
     fs.Flush();
     fs.Close();
     newEquipment.pPicturePath = destinationPath;

    En espérant que ça t'aide

    @+ sur les ondes

Discussions similaires

  1. [Info] Chargement image et Java heap space
    Par dazz_x dans le forum Langage
    Réponses: 9
    Dernier message: 11/09/2007, 11h51
  2. Réponses: 2
    Dernier message: 06/02/2006, 09h34
  3. [Info]Chargement image/fichier d'un autre projet Eclipse ?
    Par TSnarfK dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 23/01/2006, 10h07
  4. [HTML] affichage / chargement image
    Par francis m dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 27/11/2005, 17h03
  5. [FLASH MX] Pb chargement image
    Par noarno dans le forum Flash
    Réponses: 8
    Dernier message: 19/08/2005, 09h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo