Associer une image à son TreeView [Résolu]

spamito 183 Messages postés samedi 24 mars 2007Date d'inscription 30 mars 2013 Dernière intervention - 1 juin 2011 à 11:11 - Dernière réponse : spamito 183 Messages postés samedi 24 mars 2007Date d'inscription 30 mars 2013 Dernière intervention
- 2 juin 2011 à 02:17
Bonjour,

J'ai une table de ma base de données nommée : toto...
sur mon formulaire j'ai un TreeView auquel j'associe le contenu de ma table "toto"... en codant ceci.. je dois avoir tous les enregistrements sur mon TreeView et chaque enregistrement doit être accompagné par sa propre image (lien de l'image est enregistré dans la bdd)...

Comm = New SQLiteCommand("SELECT DISTINCT img FROM toto;", Conn)
R = Comm.ExecuteReader
While R.Read
   il1.Images.Add(imgLoad("xyz\abc" & R.GetString(0)))
End While
R.Close()
Comm = Conn.CreateCommand
Comm.CommandText "SELECT name, img FROM toto WHERE nameP 0 ORDER BY nameN;"
R = Comm.ExecuteReader
Do While R.Read
   Dim trR As New TreeNode
   trR .Text = R.GetString(0)
   trR .ImageKey = R.GetString(1)
   tv.Nodes.Add(trR )
Loop


Le problème se trouve dans les images... je reçois la même image dans toutes lignes (ou enregistrements) sachant que chacun a sa propre image... le programme charge toutes les images dans un ImageList mais lors de l'affichage, il m'affiche toujours la dernière qui a été chargée.

Pourriez-vous m'aider svp ?

Merci d'avance
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
cs_jopop 1540 Messages postés lundi 26 mai 2003Date d'inscription 1 août 2013 Dernière intervention - 1 juin 2011 à 11:42
3
Merci
Salut,

Tu n'associe pas tes images à leur nom dans ton ImageList. Tu ne dois donc pouvoir accéder à ses images que via leur index, et nom leur "clé". Pour remédier à ça il faudrait ajouter tes images comme suit :
Dim imgName =  R.GetString(0)
il1.Images.Add(imgName, imgLoad("xyz\\abc\" & imgName))


Et si tu ne l'as pas fait en mode design, il faut aussi que tu associes ton ImageList à ton TreeView avec le code suivant :
tv.ImageList  = il1


Voilà, pas dit que ce soit la solution miracle mais c'est à creuser

Merci cs_jopop 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 125 internautes ce mois-ci

Commenter la réponse de cs_jopop
Meilleure réponse
cs_jopop 1540 Messages postés lundi 26 mai 2003Date d'inscription 1 août 2013 Dernière intervention - 1 juin 2011 à 19:19
3
Merci
Regarde la MSDN pour l'attribut ImageKey, extrait :
The key for the image associated with this tree node when the node is in an unselected state.


A nouveau grâce à la MSDN tu peux voir que l'objet TreeNode possède également un attribut SelectedImageKey ;)

NB : oui, je suis un grand fan de la MSDN, et heureusement pour vous parce que 9 topics sur 10 où je trouve une solution c'est dans un langage que je ne pratique pas ^^

Merci cs_jopop 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 125 internautes ce mois-ci

Commenter la réponse de cs_jopop
spamito 183 Messages postés samedi 24 mars 2007Date d'inscription 30 mars 2013 Dernière intervention - 1 juin 2011 à 18:40
0
Merci
Disant que ça marche... mais pas tout à fait bon parce que lorsque je clique sur un enregistrement sur TreeView, il change d'image !!!
Commenter la réponse de spamito
spamito 183 Messages postés samedi 24 mars 2007Date d'inscription 30 mars 2013 Dernière intervention - 2 juin 2011 à 02:17
0
Merci
Oui dès que j'ai lu ce que tu as écris j'ai trouvé la solution... comme j suis bête... merci bcp ça marche bien maintenant :)

Conseil : ne jamais s'aventurer tout seul dans un programme...
Commenter la réponse de spamito

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.