TreeNode.Tag ???

Résolu
cs_Globinours Messages postés 65 Date d'inscription mercredi 6 avril 2005 Statut Membre Dernière intervention 26 août 2005 - 13 mai 2005 à 14:32
cs_Globinours Messages postés 65 Date d'inscription mercredi 6 avril 2005 Statut Membre Dernière intervention 26 août 2005 - 13 mai 2005 à 18:01
Voilà mon bout de code qui ne fonctionne apparemment pas comme je le pense



DTDTreeNode newChoice = new DTDTreeNode(...)

ArrayList listOfChoice = new ArrayList();

foreach(DTDTreeNode n in currentNode.Nodes)

{

this.BuildNodeHierachy(n,elementProcessed);

listOfChoice.add(this.XMLHierarchyTreeView.SelectedNode.Nodes);

this.XMLHierarchyTreeView.SelectedNode.Nodes.Clear();

}

newChoice.Tag=listOfChoice;



Enfait je veux pouvoir stocker des objets de type TreeNodeCollection dans le tag d'un noeud de mon TreeView!

Le problème est que les noeuds contenu pas la collection ne semble pas être ajouter!

this.XMLHierarchyTreeView.SelectedNode.Nodes contient bien des noeuds j'ai vérifier!

Mais quand j'accéde au Tag de mon noeud, les noeuds n'y sont pas!

Mais il y a bien le bon nombre d'élément dans l'ArrayList!



J'espere que je suis clair parce que c'est pas évident à expliquer :(

2 réponses

sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
13 mai 2005 à 15:41
en fait, c'est normal. Quand tu fais :
listOfChoice.add(this.XMLHierarchyTreeView.SelectedNode.Nodes);

tu ne copies pas l'objet dans la collection. tu copies une référence.
Donc, qd tu fais :
this.XMLHierarchyTreeView.SelectedNode.Nodes.Clear();

tu effaces les noeuds sélectionnés de l'objet.

Si vraiment tu veux utiliser se principe, il faut que tu copies (Clone, AddRange) ta collection dans un autre objet TreeNodeCollection et que tu l'importes dans ton ArrayList.

Sébastien FERRAND

Blog :
http://blogs.developpeur.org/sebmafate</FO< body>
3
cs_Globinours Messages postés 65 Date d'inscription mercredi 6 avril 2005 Statut Membre Dernière intervention 26 août 2005 1
13 mai 2005 à 18:01
Merci!

J'ai trop fait ce c et de c++ dans ma jeunesse
0
Rejoignez-nous