Créer des Contrôles Dynamiques dans PreInit Cas de la Page Cycle de Vie?
MSDN dit que créer des Contrôles Dynamiques dans PreInit Cas de la Page Cycle de Vie.
http://msdn.microsoft.com/en-us/library/ms178472.aspx
Pourquoi?
Quels sont les avantages perçus par la création en PreInit Événement?.
J'ai vu du code où les développeurs sont en train de créer des contrôles dynamiques dans la Méthode Page_Load?
Si il y a une différence?.
Ce qui concerne
stackoverflow.com/q/4761273/284240
OnLoad
pourrait fonctionner, mais pas toujours, vous êtes sur le côté sécuritaire dans OnInit
.OriginalL'auteur jigsmshah | 2012-03-30
Vous devez vous connecter pour publier un commentaire.
Page_Load
fonctionne très bien si vous n'avez pas besoin de s'inquiéter à propos de l'enregistrement des commandes'ViewState
à travers les publications, mais si vous avez besoin pour persister, laLoad
scène n'est pas là où vous devez ajouter ces contrôles.Des contrôles dynamiques doit exister dans la page de contrôle de la hiérarchie avant de le ViewState est chargé. Il n'y a qu'une étape avant de Charger la Vue de l'État d'Initialisation. Cela signifie que, si vous voulez que vos contrôles dynamiques persistent à l'état d'affichage, vous devez les ajouter à la hiérarchie de contrôle dans la page de
Init
événement.http://aspnet.4guysfromrolla.com/demos/printPage.aspx?path=/articles/092904-1.aspx
Mais l'esprit que vous ne pouvez pas accéder à la
ViewState
dansInit
événement parce que c'est pas encore chargé. Si vous avez besoin d'utiliser un autre persistance moyen pour stocker les variables à travers de publications(comme la Session) si nécessaire.Load
événement après avoir mis de leur parent. Ce qui me manque?Ici pour l'exemple dont je parlais.
OriginalL'auteur Rango
Cette réponse pourrait être en retard pour le posteur d'origine, mais j'ai pensé qu'il pourrait aider d'autres personnes.
Si votre application ou votre site web ne pas utiliser la page principale, il est préférable de créer des contrôles à Page_PreInit événement. Mais si vous utilisez la page maître et souhaitez créer des contrôles sur les pages de contenu au moment de l'exécution Page_Init est l'événement idéal.
Vous pouvez également créer des contrôles sur Page_Load mais gardez à l'esprit de chargement de la page est déclenché une fois que l'État d'Affichage est chargé.
OriginalL'auteur Tsega
Tim,
Merci pour la réponse.
J'ai fait une petite expérience dans laquelle je suis la création et l'ajout d'un contrôle de zone de texte de façon dynamique dans la méthode Page_Load.
Dans la Publication d'événement click du Bouton sur la page,je suis en train d'essayer d'obtenir la valeur de la zone de texte Texte de la Propriété.
Je suis en mesure d'obtenir la valeur dans l'événement click du Bouton lorsque le contrôle est ajouté dynamiquement dans l'événement Page_Load et pas le OnPreInt méthode.
Je pense que la valeur du Texte est conservé dans le ViewState même si le contrôle est été ajouté dans la méthode Page_Load.
à la suite du code:
Bien vouloir me faire savoir est-ce correct ou ce que je fais mal?
OriginalL'auteur jigsmshah