/ / Comment déterminer la valeur actuelle de Page.Titre à partir de UserControl - c #, asp.net, contrôles utilisateur, pages maîtres

Comment déterminer la valeur actuelle de Page.Titre à partir de UserControl - c #, asp.net, contrôles utilisateur, pages maîtres

J'ai une page maître, plusieurs pages de contenu - chacune des pages de contenu a un UserControl.

Dans la MasterPage, je configure le Page.Title par programme en fonction de Page_Init "Request.UserAgent.Contains ....", afin que les pages de contenu se retrouvent avec des titres de page différents basés sur celui-ci.

Le titre de chaque page de contenu est défini sur vide (Title = ""), mais lorsque la page est rendue, le titre de la page généré de manière pragmatique apparaît dans l'onglet du navigateur.

Dans le code UserControl situé derrière, je dois accéder à la valeur Page.Title de la page de contenu (page parent), et afficher un texte sur cette base:

If(Page.Title == "something")
{
Lable.Text = "something";
}
else if (Page.Title == "somethingElse")
{
lable.Text = "somethingElse";
}

Cependant, mon étiquette reste vide lors de l'utilisation de ce code. De quelle manière ai-je besoin de déterminer le Page.Titre actuel par rapport à ce que la page principale a défini?

C # s'il vous plaît

Réponses:

1 pour la réponse № 1
    If(this.Parent.Page.Title == "something")
{
Label.Text = "something";
}
else if (this.Parent.Page.Title == "somethingElse")
{
label.Text = "somethingElse";
}

vous pouvez aussi utiliser this.Master.Page.Title si vous définissez TOUJOURS le titre dans la page principale.

En outre, rappelez-vous que chaque page en tant que Cycle de la vie. Si vous recherchez le titre avant que le titre ne soit défini, une chaîne vide sera renvoyée.

Pour tester le code, essayez de coder en dur un titre dansPage maître et voir si votre code fonctionne. Une fois que vous savez que le code extrait le titre du parent, vous devez vous assurer que vous définissez le titre de la page AVANT d'essayer de le rechercher.


0 pour la réponse № 2

this.Master.Page.Title devrait vous donner le titre de la page principale que vous pouvez tester et définir comme bon vous semble.

this.Parent.Page.Title vous donne simplement le contrôle parent de la page qui n'est pas nécessairement le maître.