Recuperer les infos d'un UserControl au changement de page

Recuperer les infos d'un UserControl au changement de page - C#/.NET managed - Programmation

Marsh Posté le 02-03-2010 à 12:42:53    

Salut,  
 
j'ai une page ASP.Net dans laquelle je charge un UserControl (qui varie selon le contexte) via un PlaceHolder. Et j'aimerais bien récupérer le contenu des champs de ce UserControl au moment de changer la page. Le soucis c'est quand je quitte la page, Control du PlaceHolder est vide...
 
Quelqu'un a une idée du soucis ? :??:
 
A+


---------------
Faut qu'on court comme des lions, des tigres et des ours!
Reply

Marsh Posté le 02-03-2010 à 12:42:53   

Reply

Marsh Posté le 02-03-2010 à 13:09:12    

Et j'ai un des UserControl qui au moment d'etre chargé provoque cette erreur:
 

Citation :

Failed to load viewstate.  The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request.  For example, when adding controls dynamically, the controls added during a post-back must match the type and position of the controls added during the initial request.


 
C'est du a quoi ? :??:


---------------
Faut qu'on court comme des lions, des tigres et des ours!
Reply

Marsh Posté le 02-03-2010 à 17:20:08    

C'est crade mais expéditif et efficace : si tu n'as qu'un contrôle à générer dynamiquement, tu ne peux pas mettre en statique toutes les possibilités et afficher le bon via un switch ? Tu n'as pas 50 contrôles possibles j'imagine !


---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
Reply

Marsh Posté le 02-03-2010 à 17:29:31    

J'en ai 14 malheureusement... :/


---------------
Faut qu'on court comme des lions, des tigres et des ours!
Reply

Marsh Posté le 02-03-2010 à 17:30:42    

C'est tout un enchainement de dialogues dont le contenu des pages est dans des UC. Le but c'est avec les UpdatePanel d'Ajax de ne pas avoir le refresh complet de la page...


---------------
Faut qu'on court comme des lions, des tigres et des ours!
Reply

Marsh Posté le 02-03-2010 à 17:38:09    

Ok :d.
Par expérience on a parfois des surprises assez funs avec des contrôles générés dynamiquement dans des hiérarchies complexes (et en .net on y arrive vite entre les masters et les héritages).  
Par exemple j'ai buté récemment sur un problème de levée d'événement (qui ne se faisait jamais) provenant d'un bouton situé dans un usercontrol généré dynamiquement par un repeater. Seul l'UC fonctionnait parfaitement mais lorsque il était généré par le repeater plus rien à faire : aucun événement ne passait.
 
Dans ton cas tu fais quoi, tu fais un phTruc.Controls.Add() d'un contrôle proprement instancié précédemment ? Ca ne devrait pas poser de souci, par contre au postback ils sont peut être perdus (contrôle dynamique -> pas de viewstate). Tu as essayé en pas à pas pour voir ce que fait le bouzin ? Et ce qu'il y a dans la collection Controls de ton placeholder ?


---------------
Réalisation amplis classe D / T      Topic .Net - C# @ Prog
Reply

Marsh Posté le 04-03-2010 à 08:36:00    

Ben en fait jusqu'a ce que la page soit affiché le control est bien present dans placeHolderMain.Controls, mais au moment de quitter la page il est vide. J'ajoute via placeHolderMain.Controls.Add oui...


---------------
Faut qu'on court comme des lions, des tigres et des ours!
Reply

Marsh Posté le 04-03-2010 à 08:54:00    

Cela dit je charge le control avec cette method :
(UserControl)Page.LoadControl
C'est bon ou faut que j'instancie plus proprement comme tu dis ? :)


---------------
Faut qu'on court comme des lions, des tigres et des ours!
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed