2009-03-22 7 views
1

Où dans le cycle de vie de la page est-il le plus approprié de définir les délégués du gestionnaire d'événements pour les événements déclenchés par les contrôles utilisateur personnalisés?Où définir les gestionnaires d'événements User Control?

J'ai un contrôle utilisateur ReportFilter qui déclenche un événement ApplyFilterClicked. Actuellement, j'utilise simplement Page_Load pour affecter une méthode de gestionnaire.

reportFilter.ApplyFilterClicked += reportFilter_ApplyFilterClicked; 

Répondre

1

Si vous créez vos contrôles utilisateur dynamique, l'endroit le plus approprié est en phase Init, là où les contrôles sont créés (ou devraient être). Sinon, la phase de chargement fonctionnera très bien, et c'est probablement là que la plupart des gens les ont configurés. Évidemment, vous ne pouvez pas définir les gestionnaires plus tard, sinon ils ne seront jamais appelés, car la phase de gestion des événements est la suivante après Load.

0

Habituellement, la phase init est la meilleure pour créer des contrôles, car cela aidera avec les mises à jour viewstate aux contrôles. Consultez cette page pour quelques bonnes informations sur le cycle de vie de la page:

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

Hope this helps

Questions connexes