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 Forms Discussion :

[C#] [Winforms] Explorateur de fichier et icônes windows [FAQ]


Sujet :

Windows Forms

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 20
    Points : 13
    Points
    13
    Par défaut [C#] [Winforms] Explorateur de fichier et icônes windows
    Bonjour

    Dans mon appli, j'affiche le contenu d'un répertoire dans un treeview grâce à l'appel d'une fonction récursive.
    Pour améliorer un peu l'affichage, j'aimerai rajouter l'icone correspondant à l'extension devant le nom du fichier.
    J'ai fait pas mal de recherche et j'ai vu qu'il fallait manipuler des api mais là je n'y connais pas encore grand chose et je sèche carrément. J'ai bien trouvé qque chose en vb.net mais je n'arrive pas à le convertir même avec sharpdevelop.
    Je me demandais si quelqu'un pouvait m'aider sur ce coup là?
    Merci

  2. #2
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Voila qui devrait te satisfaire


    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
     
    [DllImport( "shell32.dll", EntryPoint = "ExtractAssociatedIcon" )]
    		private extern static IntPtr ExtractAssociatedIcon
    		(
    			IntPtr hInst,
    			[MarshalAs(UnmanagedType.LPStr)] string lpIconPath,
    			ref int lpiIcon
    		);
    		Icon ico = null;
     
    // On affiche l'icone correspondante
    			IntPtr hInst = Marshal.GetHINSTANCE( Assembly.GetExecutingAssembly().GetModules()[0] );
    			Int32  iIcon = 0;
    			IntPtr hIcon;
    // file est le chemin vers ton fichier
    			hIcon = ExtractAssociatedIcon( hInst, file, ref iIcon );
    			ico = Icon.FromHandle(hIcon);
     
     
    // Lorsqe l'on dessisne la fenètre, on affiche (dessine) l'icone
    		private void PaintForm(object sender, System.Windows.Forms.PaintEventArgs e)
    		{
    			e.Graphics.DrawIcon(ico, 36, 44);
    		}
    A+

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 20
    Points : 13
    Points
    13
    Par défaut
    Ok merci bien mais avant de tester j'aurai encore une question :
    Là tu affiches l'icône mais moi je veux la mettre devant mon nom de fichier dans mon treeview. Donc il faudrait que j'incorpore l'ico dans mon imagelist et que je donne l'index correspondant? Mais ça va me faire pleins de doublons?

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 20
    Points : 13
    Points
    13
    Par défaut
    C'est bon je te remercie mais je viens de trouver à partir de ton code un exemple complet que je vais essayer de ce pas! Voici le lien pour ceux que ça intéresse : http://santamartadotnet.hp.infoseek....eexplorer.html
    Merci encore

  5. #5
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Ravi que cela ait pu t'aider

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 20
    Points : 13
    Points
    13
    Par défaut
    Bon c'est impec, ça marche nickel même si je n'ai pas bien compris les commentaires en japonais...

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

Discussions similaires

  1. Ouvrir l'explorateur de fichier de Blender ou Windows
    Par ero91 dans le forum Développement 2D, 3D et Jeux
    Réponses: 2
    Dernier message: 07/02/2013, 11h52
  2. [Débutant] Développer des extensions pour l'explorateur de fichier de windows
    Par Asuwiel dans le forum Général Dotnet
    Réponses: 0
    Dernier message: 29/07/2012, 15h00
  3. explorateur de fichier style windows
    Par darkterreur dans le forum WinDev
    Réponses: 9
    Dernier message: 22/09/2009, 12h16
  4. Explorateurs de fichiers Windows dans une application
    Par benj63 dans le forum C++Builder
    Réponses: 5
    Dernier message: 13/08/2007, 17h47
  5. explorateur fichier php sur windows 2003
    Par super-manu dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 09/02/2006, 14h42

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