Page load master page appelé avant page load content page ?

Résolu
Monico9385 Messages postés 279 Date d'inscription lundi 29 mars 2004 Statut Membre Dernière intervention 6 août 2007 - 1 août 2007 à 16:11
Monico9385 Messages postés 279 Date d'inscription lundi 29 mars 2004 Statut Membre Dernière intervention 6 août 2007 - 2 août 2007 à 15:00
Bonjour,
je viens vous solliciter car j'ai un problème, et après des heures de recherches, je ne trouve pas de solution.
Voila la situation :

j'ai un dropdownlist dans ma master page, et je voudrais que dans le page load de celle ci, je puisse effectuer des évènements en rapport avec ce dropdownlist, sauf que c'est le page load de ma content page qui prime. J'ai essayé de passer le page_load de la master en Page_PreRender ou Page_Init, mais meme effet, ce n'est pas pris en compte avant le page load de la content page, qui doit normalement découler de ce qui a été déclaré dans la master page.

Ma question est donc : comment faire pour que mon page load (ou autre méthode) de ma master page soit appellé avant mon page load de ma content page ?

Merci d'avance pour votre aide

4 réponses

DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
2 août 2007 à 09:22
Salut,

En toute logique le Page_Init de ta master page est appellé avant le Page_Load des contents pages.
Pour t'en assuré mets toi un point d'arret dans le Page_Load de ta content page et un point d'arret dans le Page_Init de ta master page, le tout executé en mode debug.

Shell
3
Monico9385 Messages postés 279 Date d'inscription lundi 29 mars 2004 Statut Membre Dernière intervention 6 août 2007
2 août 2007 à 12:21
En effet c'est bien appellé avant. C'est mon code dans le Init qui n'était pas bon. Tu pourrais peut etre m'aider : j'ai un dropdownlist dans ma master page avec autopostback à true, mais j'arrive pas à récupérer ce qu'il renvoie.
Tu aurais une idée ?
0
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
2 août 2007 à 14:23
Ton code est bien dans le Page_Init de la master page ?
Pour recuperer le contenu :

if(this.IsPostBack)
{
   string sDropDownListValue  =  this.DropDownList1.Text
}

Shell
0
Monico9385 Messages postés 279 Date d'inscription lundi 29 mars 2004 Statut Membre Dernière intervention 6 août 2007
2 août 2007 à 15:00
Oui j'ai bien mis mon code dans le page_init, et meme avec le IsPostBack, ca ne marche pas. En fait, ca marche au première affichage de la page, mais des que je change la value de mon dropdown, ca ne le prend plus en compte (dans le init, car dans le load, ca le prend). C'est comme si ca ne passait plus dans le init.

En fait, ceci est fait pour pouvoir changer la langue de mon site via un menu déroulant.

Voila le code que j'ai mis dans le page_init de ma master page :

protected

void Page_Init(
object sender,
EventArgs e){

if (
this.IsPostBack){

string sDropDownListValue =
this.lang.Text; // lang etant l'id de mon dropdown

Thread.CurrentThread.CurrentUICulture =
new
CultureInfo(sDropDownListValue);

Thread.CurrentThread.CurrentUICulture =
Thread.CurrentThread.CurrentCulture;}

else{

Thread.CurrentThread.CurrentCulture =
CultureInfo.CreateSpecificCulture(Request.UserLanguages[0]);

Thread.CurrentThread.CurrentUICulture =
Thread.CurrentThread.CurrentCulture;}

}

Merci de ton aide
0
Rejoignez-nous