FAQ ASP.NET/VB.NETConsultez toutes les FAQ

Nombre d'auteurs : 38, nombre de questions : 369, dernière mise à jour : 30 mars 2017 

 
OuvrirSommaireWebFormsPagesCycle de vie

Le framework ASP.NET propose un modèle évolué, qui se rapproche d'un modèle événementiel comme le sont les applications client-lourd (comme les Winforms) et permettant de conserver l'état d'une page.
Ainsi, dans cette approche axée sur un modèle événementiel, notre page va passer par un certain nombre d'étapes. C'est ce qu'on appelle le cycle de vie, voici les principales étapes du cycle de vie d'une page :

Initialisation d'une page par le framework ASP.NET :

Evénement Description et actions associées
FrameworkInitialize Initialise l'arbre des contrôles, basé sur l'aspx.
DeterminePostbackMode Détermine si on est dans un PostBack et affecte la variable IsPostBack. Charge également les données GET et POST. Une fois cet événement passé, on peut utiliser Request.Form.
PreInit Evénement valable uniquement pour une page. A ce moment là, les propriétés mise en design dans l'aspx sont déjà initialisées. C'est l'endroit idéal pour créer des contrôles dynamiquement.
Init Dans cet événement, on peut également lire les propriétés mise en design, mais on ne peut pas récupérer leurs valeurs si elles ont été modifiées par l'utilisateur lors d'un post back ; ce ne sera possible qu'après LoadPostData(). Ces valeurs seront tout de même accessibles grâce à l'objet Request. Attention, ASP.NET commence par lever les événements OnInit des UserControls récursivement et ensuite lève l'événement de la Page.
TrackViewState Démarre la surveillance des modifications de l'état d'affichage des contrôles
InitComplete Evénement valable uniquement pour la page. On s'en sert pour des opérations qui nécessitent que tous les éléments soient initialisés.
LoadViewState Si la page est en post back (IsPostBack == true), ASP.NET déserialize les informations du view state et les appliques aux contrôles.
LoadPostBackData Evénement levé uniquement si IsPostBack == true. ASP.NET renseigne les contrôles avec leurs valeurs grâce au POST DATA.


Initialisation par le code utilisateur :

Evénement Description et actions associées
PreLoad Evénement valable uniquement pour la page, à utiliser avant le chargement récursif de tous les contrôles.
OnLoad Appelle récursivement OnLoad sur les contrôles enfants. C'est l'endroit idéal pour les databinds. Attention, cette fois-ci ASP.NET commence par le onload de la page et ensuite ceux des usercontrols récursivement.


Validation, événements et fin de chargement

Evénement Description et actions associées
Validation Ici, les méthodes serveurs des validateurs sont appelées.
Evénement des contrôles ASP.NET va lever les événements associés à des contrôles : OnClick, OnSelectedIndexChanged, etc ...
LoadComplete Evénement valable uniquement pour la page. On s'en sert pour des actions qui nécessitent que tous les contrôles soient chargés.


Rendu :

Evénement Description et actions associées
PreRender Avant cet événement, la page appelle EnsureChildControls. A utiliser avant que le contrôle ou la page ne soit définitivement figé.
SaveStateComplete Arrive au moment de l'enregistrement du viewState, si on modifie un contrôle après cet événement, ce ne sera pas pris en compte.
Render Méthode qui effectue le rendu de chaque contrôle.


Déchargement :

Evénement Description et actions associées
Unload Cet événement est utilisé pour libérer les ressources.
Créé le 13 octobre 2008  par nico-pyright(c)
  

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2007 Dotnet Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.