2009-08-18 9 views
0

J'ai une situation dans laquelle je dois mettre à jour un contrôle référencé dans une page maître à partir d'un contrôle référencé à partir de la page de contenu. Ci-dessous hierarhcy:Interaction MasterPage et UserControl

  • MainMasterPage
    • BreadCrumbUserControl (un contrôle utilisateur) - a une propriété de chaîne publique
  • ContentPage (utilise MainMasterPage)
    • DataUserControl

Je veux être en mesure de mettre à jour la propriété exposée de BreadCrumbUserControl de DataUserControl sur pageLoad.

J'ai été capable de mettre à jour la propriété BreadCrumbUserControl simplement à partir de ContentPage. Lorsque j'essaie de faire la même méthode pageLoad de DataUserControl, la mise à jour est ignorée en raison du cycle de vie de la page.

Comment puis-je y parvenir? Je peux penser à faire quelque chose sur le client en utilisant hiddenField et autres, mais je voulais voir s'il y avait une meilleure solution.

Merci pour votre aide.

Répondre

1

Il est possible de faire ce que vous demandez, mais je ne le ferais pas. Je voudrais lever un événement de la "DataUserControl" et le gérer dans la page. Ensuite, la classe de page peut mettre à jour la valeur de contrôle de la page maître. Cela réduira le couplage de vos contrôles et de la page sur laquelle ils sont utilisés.

+0

Merci. Cette solution a fonctionné pour moi. – Emon