Orden de eventos en los formularios Windows Forms
El orden en que se producen los eventos en las aplicaciones de Windows Forms resulta especialmente interesante para los desarrolladores preocupados por controlar uno a uno cada uno de estos eventos. Cuando una situación exige un control minucioso de los eventos, como cuando se vuelven a dibujar partes del formulario, es necesario ser consciente del orden exacto en el que se desencadenarán los eventos en tiempo de ejecución. En este tema se proporcionan algunos detalles sobre el orden de los eventos durante varias fases importantes del uso de las aplicaciones y los controles. Para obtener detalles concretos sobre el orden de eventos de entrada del mouse, vea Eventos del mouse (ratón) en formularios Windows Forms. Para obtener información general sobre los eventos de los formularios Windows Forms, vea Información general sobre eventos (Formularios Windows Forms). Para obtener información detallada sobre la composición de los controladores de eventos, vea Información general sobre controladores de eventos (Formularios Windows Forms).
Eventos de inicio y cierre de la aplicación
Las clases Form y Control exponen un conjunto de eventos relacionados con el inicio y cierre de la aplicación. Cuando una aplicación de Windows Forms se inicia, los eventos de inicio del formulario principal se provocan en el orden siguiente:
Cuando una aplicación se cierra, los eventos de cierre del formulario principal se producen en el orden siguiente:
El evento ApplicationExit de la clase Application se provoca después de los eventos de cierre del formulario principal.
Nota
Visual Basic 2005 incluye eventos de aplicación adicionales, como WindowsFormsApplicationBase.Startup y WindowsFormsApplicationBase.Shutdown. Para obtener más información, vea Cómo: Controlar eventos de aplicaciones (Visual Basic) y Cómo: Controlar eventos de aplicaciones (Visual Basic) y Cómo: Controlar eventos de aplicaciones (Visual Basic).
Eventos Focus y Validation
Al cambiar el foco mediante el teclado (TAB, MAYÚS+TAB, etc.), llamando a los métodos Select o SelectNextControl; o bien, estableciendo el valor de la propiedad ActiveControl en el formulario actual, los eventos de foco de la clase Control se producen en el siguiente orden:
Cuando cambia el foco utilizando el mouse o llamando el método Focus, los eventos del foco de la clase Control tienen lugar en el siguiente orden: