FindControl( )

76julien Messages postés 58 Date d'inscription lundi 14 janvier 2008 Statut Membre Dernière intervention 4 juin 2010 - 7 févr. 2008 à 15:20
76julien Messages postés 58 Date d'inscription lundi 14 janvier 2008 Statut Membre Dernière intervention 4 juin 2010 - 12 févr. 2008 à 11:17
Salut a tous !!
J'expose mon probleme, voila j'ai deux pages
 - masterpage.master
 - log.aspx.cs (celle-ci imbriqué dans masterpage avec un )

Or, a partir de ma page log.aspx.cs, je souhaite retrouvé un lien(nommé "Hyperlink1") qui se trouve dans MasterPage.master
Cependant, Hyperlink1est contenu dans unLoggedInTemplate sur ma pageMasterPage.master

Mon probleme vient de là, c'est le LoggedInTemplatequi me pose probleme pour retrouver mon Hyperlink1 grace au code suivant contenu dans log.aspx.cs:

LoginView lv = Master.FindControl("LoginView1") asLoginView;

 // j'ai trouver  lv.LoggedInTemplate; mais je ne sais pas comment m'en servir...???

HyperLink
hl = Master.FindControl("HyperLink1
"
) asHyperLink;

Merci si quelqu'un peut m'aider a retrouver mon lien perdu ????sniffff !!!
++

9 réponses

lassaad83 Messages postés 148 Date d'inscription vendredi 28 avril 2006 Statut Membre Dernière intervention 1 décembre 2009
8 févr. 2008 à 15:59
Salut 76julien, essaye un truc de ce genre :

HyperLink MonHyperlink =
new
HyperLink();

MonHyperlink = (
HyperLink)
this.Master.FindControl(
"Hyperlink1");

---------------------------------------------------------------------------
XxX Enjoy & Get Connected XxX
0
76julien Messages postés 58 Date d'inscription lundi 14 janvier 2008 Statut Membre Dernière intervention 4 juin 2010
11 févr. 2008 à 14:15
Merci pour ton conseil lassad83 mais sa ne change rien cela donne la même erreur....
Sa revient a faire ::::HyperLink

MonHyperLink = this.Master.FindControl("HyperLink1") asHyperLink;

et c'est ce que j'ai fais mais j'ai toujours pas trouvé la solution...
0
lassaad83 Messages postés 148 Date d'inscription vendredi 28 avril 2006 Statut Membre Dernière intervention 1 décembre 2009
11 févr. 2008 à 16:50
Bizzare.... pour moi ça marche !

---------------------------------------------------------
XxX Enjoy & Get Connected XxX
0
lassaad83 Messages postés 148 Date d'inscription vendredi 28 avril 2006 Statut Membre Dernière intervention 1 décembre 2009
11 févr. 2008 à 18:01
Ah en fait, moi j'avais pas inclus l'hyperLink dans un LoginView d'ou le fait que ça marchais sans problème pour moi  ...
Mais bon après avoir regarder de plus prés, la solution est que tu dois recupperer ton LoginView et à partir du LoginView tu cherche l'HyperLink.

LoginView MonLoginView =
new
LoginView();
MonLoginView = (
LoginView)
this.Master.FindControl(
"LoginView1");

HyperLink MonHyperLink =
new
HyperLink();

MonHyperLink = (HyperLink)MonLoginView.FindControl(
"HyperLink1");
MonHyperLink.Text =
"ça Marche Impec !!!";


Une exeption sera levé si tu essai d'acceder a cet HyperLink avec un utilisateur non identifié, et cela resulte du fait que tu a mis ton link dans un LoggedInTemplate ([LoginView, classe Pour plus d'info]).

A +

------------------------------------------------------
XxX Enjoy & Get Connected XxX
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lassaad83 Messages postés 148 Date d'inscription vendredi 28 avril 2006 Statut Membre Dernière intervention 1 décembre 2009
11 févr. 2008 à 18:16
Oups...y a eu un petit problème, revoila le lien LoginView ...
0
76julien Messages postés 58 Date d'inscription lundi 14 janvier 2008 Statut Membre Dernière intervention 4 juin 2010
12 févr. 2008 à 08:25
Ba j'ai déja fait sa mais sa ne marche pas pour moi ::




LoginView
lv = Master.FindControl(

"LoginView1"
)

as



LoginView
;


HyperLink
hl = lv.FindControl(

"HyperLink1"
)

as



HyperLink


// hl = null    ya un probleme la…!

hl.NavigateUrl =




"~/ma_page.aspx?s="
+ s;  //erreur ici car hl est a null
0
76julien Messages postés 58 Date d'inscription lundi 14 janvier 2008 Statut Membre Dernière intervention 4 juin 2010
12 févr. 2008 à 09:58
En faite c'est parce que je ne suis pas encore connecté que je ne trouve pas mon lien Hyperlink1...
En effet, ce lien est créé que lorsque l'utilisateur s'est loggé...

Bon, j'ai trouvé la cause de mon probleme maintenant il me faut trouvé une solution...
0
lassaad83 Messages postés 148 Date d'inscription vendredi 28 avril 2006 Statut Membre Dernière intervention 1 décembre 2009
12 févr. 2008 à 10:49
"Une exeption sera levé si tu essai d'acceder a cet HyperLink avec un utilisateur non identifié..."


Puisque tu utilise un LogedIntemplate, il faut que tu soit loggé pour pouvoir reccuperer ton Hyperlink, après tu a d'autre template que tu peut utilisé : AnonymousTemplate qui lui sera visible pour les utilisateur anonyme mais attention PAS les loggé  et le dernier le RoleGroups qui est spécifique a des utilisateur ayant des roles bein définie.

Ce que tu peut faire c'est d'utiliser ces trois template et d'y mettre un hyperLink dans chancun et en fonction du USER tu recupere le bon.
0
76julien Messages postés 58 Date d'inscription lundi 14 janvier 2008 Statut Membre Dernière intervention 4 juin 2010
12 févr. 2008 à 11:17
J'utilise actuellement ces trois templates mais justement dans ma page log.aspx (la page qui permet de se logger) je dois récupéré mon lien (dans MasterPage.master ) lorsque je suis loggé. Or, c'est la page qui doit me logger...

Je n'arrive pas a trouvé quand je suis connecté dans ma page log.aspx...
0
Rejoignez-nous