Chargement dynamique WebUserControl

[Résolu]
Signaler
Messages postés
10
Date d'inscription
vendredi 10 mars 2006
Statut
Membre
Dernière intervention
4 janvier 2008
-
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
-
Bonjour,

Je debute en ajax asp net et je souhaite réalise une page web avec à l'interieur,
des WebUserControl imbriqués (conteneur, contenant ...)
Ex :
Ma page contient un WebUserControl separé en 2 update panel, un a gauche et un a droite de ma page.

la partie gauche contient un tree view qui raffraichie la partie droite qui est en fait un autre user control.

Mon WebUserControl à droite comprend un menu et en dessous un update panel qui peut contenir
different WebUserControl en fonction du menu selectionné (c difficile a suivre).
Cette partie droite crée donc dynamiquement un WebUserControl en fonction du menu selectionné.

pb: dans cet user control dynamique je n'arrive pas à attrapper l'event on click d'un bouton.
En fait ce que je fais c'est suite à la sélection d'un menu, je load dans l'event d'appel,  le WebUserControl corespondant. cela ne suffit pas.

Merci pour votre aide

10 réponses

Messages postés
10
Date d'inscription
vendredi 10 mars 2006
Statut
Membre
Dernière intervention
4 janvier 2008

C'est bon je pense etre pas mal maintenant.
J'ai reussi à créer dynamiquement mes webusercontrol et à les remplacer.
Je stocke en fait le user control loader dans une var de session et je de le recrée dans mon page_init.
Il y a tout de meme une nuance lorsque je load mon webuser control dans un callback d'evenement je demande l'update de l'update panel qui l'englobe mais dans le page init je ne fait que loader le webusercontrol sans forcer son rafraichissement..

Voilou

Grand Merci jesusonline
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
29
Bonjour,

Ne jamais faire des controles dynamiquement si on a pas exactement compris le mécanisme interne du cycle de vie d'ASP.net ! 

Peux tu trouver une solution sans création de controle dynamique ? par exemple avec un multiview ?

<hr />Cyril - MSP - MCPD ASP.net & MCTS SQL - Consultant indépendant
Messages postés
10
Date d'inscription
vendredi 10 mars 2006
Statut
Membre
Dernière intervention
4 janvier 2008

Merci pour ta reponse rapide, mais je pense pas pouvoir faire autrement que avec ce fonctionnement
 il y a dejas pas mal de dev réalisé.
Messages postés
10
Date d'inscription
vendredi 10 mars 2006
Statut
Membre
Dernière intervention
4 janvier 2008

Je vais quand meme creuser du cote du multiview

MERCI
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
29
Je suis actuellement en train de bosser sur une appli qui ressemble à ce que tu indiques : un genre de mini outlook, avec à gauche un treeview, en haut à droite une liste et en bas à gauche le détail sur l'élément séléctionné de la liste. Je me suis créer un custom control pour bien implémenter comme il le faut les "contrôles dynamiques". J'ai eu ce besoin car ma liste en haut à droite doit pouvoir s'afficher de différentes façons et a des comportements particuliers (déplacement avec les touches du clavier, etc...). Mais j'aurais pu me servir de Repeater et MultiView.
J'ai choisit l'aproche CustomControl car d'une part j'aime ca et je connais assez bien le fonctionnement du cycle de vie d'ASP.net. La boite pour laquel je bosse avait commencé l'appli avant de faire appel à moi et ont aussi butté sur les controles dynamiques ...

Les contrôles dynamiques est une des fonctionnalités le moins bien compris d'ASP.net et aussi une des plus complexe.

<hr />Cyril - MSP - MCPD ASP.net & MCTS SQL - Consultant indépendant
Messages postés
10
Date d'inscription
vendredi 10 mars 2006
Statut
Membre
Dernière intervention
4 janvier 2008

L'utilisation du multiview avec ajax est possible ??
Et un view peut il contenir un user control ?
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
29
oui, pas de soucis à ce niveau là et surtout ASP.net rajoutera les contrôles quand il faut pour bien gérer le viewstate/postback.

<hr />Cyril - MSP - MCPD ASP.net & MCTS SQL - Consultant indépendant
Messages postés
10
Date d'inscription
vendredi 10 mars 2006
Statut
Membre
Dernière intervention
4 janvier 2008

En fait si je veux creer un dynamiquement un webuser control suite a une action il faut donc que je creer ce user control dans l'action (click bouton) et que je fasse un update de l'update panel le contenant mais egalement lors du page_init
Messages postés
10
Date d'inscription
vendredi 10 mars 2006
Statut
Membre
Dernière intervention
4 janvier 2008

je voulais dire, la creation egalement dans le page init
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
29
Normalement on stock dans le viewstate et on surcharge la méthode CreateChildControls. Mais cela nécessite de bien comprendre la création de CustomWebControl.

<hr />Cyril - MSP - MCPD ASP.net & MCTS SQL - Consultant indépendant