2010-12-17 20 views
37

Tengo una página maestra y una página web que usa la página maestra.¿Qué evento llamó primero? Página maestra Page_Load o página de contenido Page_Load

En ambos tengo un controlador de eventos Page_Load.

¿En qué orden se llaman los controladores Page_Load? ¿Contenido primero luego Maestro o Maestro primero y luego contenido?

+9

¿Por qué no probarlo? Cree una página con una página maestra, maneje ambos eventos, establezca puntos de interrupción y ejecute su depurador. –

Respuesta

74

El contenido de la página de eventos de carga se disparará antes del evento de carga página principal.

Ver here para conseguir una orden (MSDN: Eventos en ASP.NET Maestro y páginas de contenido)

copia en caso de enlace se agota:

La siguiente es la secuencia de eventos en los que se producen cuando una página maestra es se fusionó con una página de contenido:

1 - Página de contenido Evento de preinicio.

2 - La página maestra controla el evento Init.

3 - Controles de contenido Evento de inicio.

4 - Evento Init de la página maestra.

5 - Página de contenido Init event.

6 - Página de contenido Cargar evento.

7 - Página maestra Cargar evento.

8 - Controles de la página maestra Cargar evento.

9 - Controles de página de contenido Cargar evento.

10 - Página de contenido Evento PreRender.

11 - Evento PreRender de la página maestra.

12 - La página maestra controla el evento PreRender.

13 - La página de contenido controla el evento PreRender.

14 - Controles de la página maestra Descargar evento.

15 - Controles de página de contenido Descargar evento.

16 - Página maestra Descargar evento.

17 - Página de contenido Descargar evento.

+2

Lo que es importante notar aquí es que controla el evento de carga de fuego en una secuencia diferente a otros eventos. Los controles de la página maestra cargan el evento antes de que la página de contenido controle Cargar evento. –

10

En lo que MasterPage es de hecho un control de usuario todas las reglas aplicadas a ella como para los controles de usuario:

alt text

2

Las páginas maestras ejecutan Page_Load() desde el nivel más profundo de anidación hacia afuera. Entonces su página web anidada primero ejecutará el evento page_load.

Cuestiones relacionadas