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 :

Icone d'application depuis une base de données


Sujet :

Windows Presentation Foundation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    SLE
    SLE est déconnecté
    Membre émérite Avatar de SLE
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 604
    Par défaut Icone d'application depuis une base de données
    Bonjour,


    Une de mes application WPF doit récupérer des images dans une base de données (byte[]) et les utiliser comme icône dans un treeview, mais aussi pour définir l'icone de la fenêtre principale de l'application.
    Pour cela, j'utilise cette fonction :

    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    public BitmapImage ByteArrayToBitmapImage(byte[] bytearrayimage)
    {
         MemoryStream stream = new MemoryStream(bytearrayimage);
     
         BitmapImage image = new BitmapImage();
         image.BeginInit();                    
         image.CacheOption = BitmapCacheOption.OnLoad;                    
         image.StreamSource = stream;
         image.EndInit();
     
         return image;
    }

    Ce code fonctionne parfaitement pour définir une image dans un treeview, mais quand je veux l'utiliser pour définir l'icône de l'application
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Icon = ByteArrayToBitmapImage(monimagedb);
    j'obtiens une levée d'exception System.ArgumentNullException :
    La valeur ne peut pas être null. Nom du paramètre*: bitmapUri
    Quelqu'un a-t-il une solution ?
    Merci.

  2. #2
    SLE
    SLE est déconnecté
    Membre émérite Avatar de SLE
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 604
    Par défaut
    J'ai trouvé une solution. Au lieu d'utiliser la classe BitmapImage, j'ai utilisé un BitmapFrame et là ça fonctionne pour tout, et le code est vachement plus light :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public BitmapFrame ByteArrayToBitmapFrame(byte[] bytearrayimage)
    {
         return BitmapFrame.Create(new MemoryStream(bytearrayimage));
    }

    Maintenant, si quelqu'un a une explication sur l'exception levée par le code précédent, je suis preneur...

    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Mise à jour de JTable depuis une Base de Données.
    Par hmd01 dans le forum Composants
    Réponses: 3
    Dernier message: 13/03/2007, 16h51
  2. [MySQL]Affichage d'image depuis une base de données
    Par Sofute dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 20/02/2007, 14h43
  3. Réponses: 8
    Dernier message: 29/09/2006, 12h08
  4. Réponses: 13
    Dernier message: 11/08/2006, 10h08
  5. Liens depuis une base de donnée statique
    Par LucG dans le forum Access
    Réponses: 4
    Dernier message: 26/10/2005, 11h12

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