Copie de Treeview

cs_darkolive Messages postés 27 Date d'inscription lundi 17 mai 2004 Statut Membre Dernière intervention 21 décembre 2006 - 22 nov. 2006 à 13:34
cs_darkolive Messages postés 27 Date d'inscription lundi 17 mai 2004 Statut Membre Dernière intervention 21 décembre 2006 - 24 nov. 2006 à 13:54
Bonjour,

Je vais essayer d'être le plus clair possible :

J'ai une page avec un Treeview (rempli d'après une base de données)... J'en ouvre une autre et dans cette nouvelle page je souhaite afficher le treeview ?
Je peux bien sur le re-remplir d'après la base, mais n'y a-t-il pas un moyen qui permettrait juste de le copier, ou d'y faire référence ?

Voila je vous remercie d'avance de vos conseils et explications.

9 réponses

SuperBouly Messages postés 410 Date d'inscription dimanche 1 février 2004 Statut Membre Dernière intervention 8 mai 2010
23 nov. 2006 à 07:45
on peut sans doute mettre en cache le dataset du premier et l'appeler ensuite.

@Gilles
0
cs_darkolive Messages postés 27 Date d'inscription lundi 17 mai 2004 Statut Membre Dernière intervention 21 décembre 2006
23 nov. 2006 à 07:46
Je n'utilise pas de DataSet. Il faudrait que celui ci soit hiérarchique (de type XML), or ca n'est pas mon cas.
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
23 nov. 2006 à 19:55
Bonjour, tu peux mettre le menu dans un UserControl et mettre l'UserControl en cache avec les directives @Cache qui vont bien :-)

<hr />Cyril - MVS - MCP
0
cs_darkolive Messages postés 27 Date d'inscription lundi 17 mai 2004 Statut Membre Dernière intervention 21 décembre 2006
24 nov. 2006 à 08:48
Ok je vais essayer ca alors, Merci beaucoup ....
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_darkolive Messages postés 27 Date d'inscription lundi 17 mai 2004 Statut Membre Dernière intervention 21 décembre 2006
24 nov. 2006 à 11:20
Alors j'ai essayé avec le cache :

Dans une page je fais :
    Cache["tv"] = monTreeView;

et dans l'autre, au chargement je fais :
    TreeView monTreeView2 = (TreeView)Cache["tv"];
        Controls.Add(monTreeView2);

La il me dit qu'il n'arrive pas a trouver d'instance de cet objet, donc qu'il ne trouve pas ce qu'il y a dans Cache["tv"].

Comment ca se fait ? J'ai oublié quelque chose ?
0
cs_darkolive Messages postés 27 Date d'inscription lundi 17 mai 2004 Statut Membre Dernière intervention 21 décembre 2006
24 nov. 2006 à 11:35
Cette erreur doit provenir du fait que je met le Treeview en cache de la page :(

Quelqu'un sait comment mettre en cache de l'application ?
0
cs_darkolive Messages postés 27 Date d'inscription lundi 17 mai 2004 Statut Membre Dernière intervention 21 décembre 2006
24 nov. 2006 à 11:54
J'ai essayé de mettre le Treeview en variable de session...

Ca marche superbement bien, mais est-ce correct ?
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
24 nov. 2006 à 12:02
Le Cache est global à l'application, la page n'as pas de cache (sinon je vois pas pourquoi ca s'appellerais Cache ...)

Mettre en cache veut dire mettre le rendu en cache, tu peux mettre l'instance de l'objet en cache mais c'est pas vraiment utile ... Pour mettre en cache il suffit de mettre ton treeview dans un UserControl et de rajouter la directive <%@ OutputCache duration="300" VaryByParam="none" %> car là ce que tu fais est une grosse bidouille :-)

<hr />Cyril - MVS - MCP
0
cs_darkolive Messages postés 27 Date d'inscription lundi 17 mai 2004 Statut Membre Dernière intervention 21 décembre 2006
24 nov. 2006 à 13:54
Bon je laisse tomber les variables Session alors (dommage ca marchait bien lol)

J'ai donc une page qui contient un UserControl qui contient un TreeView.

Quand je clique sur un noeud du treeView, l'appli affiche des informations dans des champs...
J'utilise pour cela l'évènement OnSelectedNodeChanged, qui doit etre defini dans le acsx non ?

Mais alors comment avoir acces aux champs de ma page a partir de cette methode (a partir du UserControl en fait) ?
0
Rejoignez-nous