2008-09-24 7 views
3

Quels sont les événements d'un contrôle de serveur ASP .Net et comment leur ordre est-il lié aux événements de la page contenant?Ordre des événements de contrôle du serveur ASP .Net

Le problème concret est que je suis à la recherche d'un événement dans le contrôle serveur qui se déclenche avant l'événement Page_Load de la page contenant.

Répondre

5

En ce qui concerne la façon dont ils se rapportent à des événements Page, au moins pour Init et charge:

« Bien que les deux Init et la charge se produisent de façon récursive sur chaque commande, ils se produisent dans l'ordre inverse L'événement Init (et aussi. Événement de déchargement) pour chaque contrôle enfant se produit avant que l'événement correspondant est levé pour son conteneur (ascendant). Cependant l'événement Load pour un conteneur se produit avant les événements Load pour ses contrôles enfants (descendant). "

De http://msdn.microsoft.com/en-us/library/ms178472.aspx

0

Il s'agit d'un problème de petite taille car le contrôle peut être placé dans la page après l'événement "Page_Load".

Dans mon projet historique, j'ai dérivé toutes les pages de ma classe "PageEx: System.Web.UI.Page". Qui avait une propriété "CurrentState" de type "enum PageStates {PreInit, Init, PostInit, PreLoad,/* etc ... * /}". Que tous mes contrôles ont été reconnus en état de cycle de page.

1

Consultez ce page. Il vous permettra de savoir quels événements déclenchent quand. On dirait que vous pourriez utiliser l'événement PreLoad.

Questions connexes