2009-07-07 8 views
0

J'utilise un contrôle treeview à l'intérieur d'un panneau de mise à jour. La collection checkednodes est réinitialisée presque chaque fois. Pouvez-vous aider?Pourquoi ma collection treeview.checkednodes a-t-elle été réinitialisée?

+0

presque à chaque fois :) ??? Que voulez-vous dire? tu as du temps et pas du temps? –

+0

pouvez vous plz poster votre code .. –

+1

J'ai effectivement travaillé dessus et le gars à blâmer est AJAX UpdatePanel. Microsoft a doucement déclaré que TreeView n'est pas compatible avec UpdatePanel et j'ai été obligé d'utiliser TreeView dans un UpdatePanel. J'ai détaillé le même sur mon blog http://www.geekays.net/post/Using-TreeView-inside-AJAX-UpdatePanel.aspx et je suis heureux maintenant. – Kangkan

Répondre

0

Eh! Il est tard, mais j'ai pensé à mettre à jour ce post maintenant. Je travaillais sur la question. Le problème était que j'ai été obligé d'utiliser l'arborescence sous AJAX UpdatePanel. Donc, si je sélectionne une liste de nœuds dans l'arborescence (ma vue arborescente est activée), je ne trouve parfois aucune case cochée dans le code-behind. J'ai donc étudié les comportements, lu différents messages sur différents forums et j'ai fait du code pour gérer la plupart des problèmes.

Toute personne intéressée par les détails peut regarder mon post ici: http://www.geekays.net/post/Using-TreeView-inside-AJAX-UpdatePanel.aspx

1

Je vais lancer une réponse du champ de gauche car il n'y a pas beaucoup de travail ici. Supposons que vous remplissez l'arborescence sur Page_Load ou Page_PreRender. Lors de la publication, reliez-vous toujours l'ensemble de données d'origine à l'arborescence? Ne liez que if! IsPostBack et vous devriez tous être définis.

+0

Je ne recompose que dans le cas où il y a eu des changements dans les données sous-jacentes et à l'intérieur! IsPostBack. De même, parfois (après une publication due à l'expansion du noeud ou à d'autres événements), l'événement nodeclick actualise la page entière. Mais le problème des codes à cocher perdus est le plus sérieux. Les checkednodes fonctionnent au moment de l'événement nodepopulate dans la publication. Mais l'événement page_preload ou page_load qui suit l'événement treepopulate indique ZERO count. Je mets actuellement les noeuds vérifiés à la session et l'obtiens quand nécessaire. Mais il faut beaucoup de gestion. voir plus abot le problème à www.geekays.net – Kangkan

Questions connexes