2008-12-17 12 views
8

Tengo una página web asp.net con un montón de código que se maneja en el evento Carga de página de la página. También tengo un cuadro desplegable en la página que debería volver a cargar la página con un nuevo valor, pero me gustaría obtener este nuevo valor antes de procesar todo el código de carga de página. Estoy tratando de entender el ciclo de vida de la página ASP.NET.evento de control before Page_Load

¿Debo mover el código de carga de página a un evento posterior o hay una manera de obtener el valor del valor de la lista desplegable antes de que comience el evento de carga de página?

TIA

Respuesta

10

Usaría Page_PreLoad en lugar de Page_Init, porque se genera después de que se procesen todos los datos de la devolución de datos.

+0

Estoy teniendo mejor suerte con PreLoad que con Init. Parece que no puedo obtener SelectedValue del ddl durante Init pero puedo con preLoad. – zkent

2

Try Page_Init

+0

¿Estás diciendo que puedo obtener el valor de un cuadro desplegable en page_init? – zkent

+0

La respuesta es más complicada que esto, obviamente, pero esto debería apuntar en la dirección correcta. Si va a trabajar mucho con formularios web, familiarícese con el ciclo de vida de la página. Tal vez esto ayude: http://john-sheehan.com/blog/net-cheat-sheets –

+0

Sí, puede obtener el valor seleccionado en Page_Init. Realmente desea recuperarlo en un evento fuera de Init/Load (como un clic de botón, etc.). –

0

Como se ha señalado antes, Page_Init es lo que quiere. Pero te empleo para hacer tus páginas lo más unidas posible. Mire en el patrón de MVP para empezar. Además, asegúrese de que la mayor parte de su lógica esté en sus objetos de dominio.

No debería haber demasiado código en el evento Page_Load. Si lo hay, debe dividirse en métodos concisos para que no tengas un código loco.

+0

Heredé este código y lo he refactorizado inmensamente para mover el código a clases y métodos. Sin embargo, todavía quiero leer el valor ANTERIOR a page_load – zkent

Cuestiones relacionadas