Bonjour.
Voilà j'ai un petit problème qui me complique bien la vie...
J'ai dans mon application un treeviex sur plusieurs niveaux. Pour une raison dont je ne peux me passer, arrivé à un certain traitrement, je suis onbligé de sauvagarder tous les noeuds de mon Treeview (pour se faire je copiele noeud racine), effacer tous les noeud du Treeview, faire mon traitement et remettre le noeud que j'ai sauvegardé.
Cela fonctionne, d'autant que j'ai des cases à cocher sur les noeuds, et elles le restent même après l'insertion de la copie, mais le problème c'est que tous les noeuds qui étaient ouverts (Expanded) avant la copie, ne le sont plus après. Ce qui est pas mal ennuyeux pour l'utilisateur qui doit à chaque fois se rappeler sur quel noeud il était et qui doit à chaque fois le rouvrir.
Savez-vous comment je porrais faire pour que lors de l'insertion du noeud, le Treeview se restructure comme avant?
Voici mon bout de code:
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 private void exemple() { Treenode tempRacine = null ; // Sauvegarder les noeud de l'arbre if(treeview1.Nodes[0] != null && treeview1.Nodes.Count != 0) tempRacine = (LevelTreeNode) treeview1.Nodes[0].Clone() ; // Effacer les noeuds qui y sont actuellement // Traitement... // ... //remettre le noeud if(tempRacine != null) { treeview1.Nodes.Add(tempRacine); } // Traitement... //... }
Merci beaucoup!!!!
Partager