Variable Page usercontrol

Résolu
fouedelapoche Messages postés 36 Date d'inscription lundi 2 août 2004 Statut Membre Dernière intervention 30 octobre 2009 - 19 oct. 2007 à 10:58
fouedelapoche Messages postés 36 Date d'inscription lundi 2 août 2004 Statut Membre Dernière intervention 30 octobre 2009 - 22 oct. 2007 à 21:28
bonjour,

voici donc mon souci :

J'ai une page dans laquelle j'appel un Usercontrol.

Dans cette page je déclare une variable de type PageSource (du côté code behind bien sûr)

et je souhaiterais modifier cette varailbe depuis mon usercontrol

Donc ma question est : comment accèder à une variable d'une page dans un user control ?

merci d'avance

2 réponses

cs_Nurgle Messages postés 1642 Date d'inscription samedi 6 novembre 2004 Statut Membre Dernière intervention 28 avril 2011 4
21 oct. 2007 à 11:43
Salut,

Le plus simple est d'utiliser l'héritage :
- Dans ton dossier App_Code (ou dans une DLL externe), crée une classe nommée MaPage qui hérite de System.Web.UI.Page. Ajoute lui ensuite ta propriété spécifique.
- Dans le code behind de ta page, au lieu de la faire hériter de System.Web.UI.Page, fait la hériter de MaPage.
- Dans l'usercontrol, tu n'as qu'à remplacer la propriété Me.Page (qui est de type System.Web.UI.Page) par une autre de type MaPage, de cette façon :

PublicShadows Page As MaPage

Ainsi dans ton UserControl, Me.Page pointera directement vers le type de ta page (MaPage), et donc tu pourras faire Me.Page.MaPropriete ou Me.Page.MaMethode() directement !

Attention : 
- Dans ce cas tu ne dois pas utiliser cet UserControl dans une page qui n'hérite pas de MaPage ! Mais évidemment tu peux faire hériter autant de page que tu veux de MaPage, c'est la technique la plus courante pour mutualiser du code entre plusieurs pages.

- Comme les contrôles ne sont pas créés dans la page de base, si jamais tu cherches à accéder à un Control de la page qui contient l'UserControl, utilises plutôt quelque chose comme Me.Page.FindControl("TextBox1").

Bonne journée,
A++

<hr width="100%" size="2" />Nurgle (Antoine) - MSP
3
fouedelapoche Messages postés 36 Date d'inscription lundi 2 août 2004 Statut Membre Dernière intervention 30 octobre 2009
22 oct. 2007 à 21:28
merci pour cette réponse... j'avais trouver le truc ...mais ça confirme ma solution encore merci
0
Rejoignez-nous