Compartir a través de


Eventos de los proyectos de Office

Cada plantilla de proyecto de Office genera automáticamente varios controladores de eventos.Los controladores de eventos de las personalizaciones de nivel de documento son ligeramente diferentes de los controladores de eventos de los complementos de nivel de aplicación.

Se aplica a: La información de este tema se aplica a los proyectos de nivel de documento y los proyectos de nivel de aplicación para Office 2013 y Office 2010. Vea Características disponibles por aplicación y tipo de proyecto de Office.

Proyectos de nivel de documento

Visual Studio proporciona código generado subyacente a los documentos u hojas de cálculo nuevos o existentes en las personalizaciones de nivel de documento.Este código produce dos eventos diferentes: Startup y Shutdown.

7xy91eax.collapse_all(es-es,VS.110).gifEvento Startup

El evento Startup se provoca para cada uno de los elementos host (documento, libro u hoja de cálculo) después de que el documento se esté ejecutando y se haya ejecutado todo el código de inicialización del ensamblado.Es la última acción que se ejecuta en el constructor de la clase en la que se ejecuta el código.Para obtener más información acerca de los elementos de host, vea Información general sobre elementos y controles Host.

Cuando se crea un proyecto de nivel de documento, Visual Studio crea controladores de eventos Startup en los archivos de código generados:

  • En los proyectos de Microsoft Office Word, el controlador de eventos se denomina ThisDocument_Startup.

  • En los proyectos Microsoft Office Excel, los controladores de eventos tienen los nombres siguientes:

    • Sheet1_Startup

    • Sheet2_Startup

    • Sheet3_Startup

    • ThisWorkbook_Startup

7xy91eax.collapse_all(es-es,VS.110).gifEvento Shutdown

El evento Shutdown se genera para cada uno de los elementos host (documento u hoja de cálculo) cuando el dominio de aplicación donde se ha cargado el código está a punto de descargarse.Es el último elemento al que se llama en la clase cuando ésta se descarga.

Cuando se crea un proyecto de nivel de documento, Visual Studio crea controladores de eventos Shutdown en los archivos de código generados:

  • En los proyectos de Microsoft Office Word, el controlador de eventos se denomina ThisDocument_Shutdown.

  • En los proyectos Microsoft Office Excel, los controladores de eventos tienen los nombres siguientes:

    • Sheet1_Shutdown

    • Sheet2_Shutdown

    • Sheet3_Shutdown

    • ThisWorkbook_Shutdown

[!NOTA]

No quite controles mediante programación durante el funcionamiento del controlador de eventos Shutdown del documento.Los elementos de la interfaz de usuario del documento dejan de estar disponibles cuando se produce el evento Shutdown.Si desea quitar controles antes de que se cierre la aplicación, agregue el código a otro controlador de eventos, como BeforeClose o BeforeSave.

7xy91eax.collapse_all(es-es,VS.110).gifDeclaraciones del método de control de eventos

Cada declaración del método de control de eventos tiene los mismos argumentos que se le han pasado: sender y e.En Excel, el argumento sender hace referencia a la hoja (por ejemplo, Sheet1 o Sheet2); en Word, el argumento sender hace referencia al documento.El argumento e hace referencia a los argumentos estándar de un evento, que no se utilizan en este caso.

El ejemplo de código siguiente muestra los controladores de eventos predeterminados en los proyectos de nivel de documento para Word.

Private Sub ThisDocument_Startup(ByVal sender As Object, ByVal e As System.EventArgs) _
    Handles Me.Startup

End Sub

Private Sub ThisDocument_Shutdown(ByVal sender As Object, ByVal e As System.EventArgs) _
    Handles Me.Shutdown

End Sub
private void ThisDocument_Startup(object sender, System.EventArgs e)
{
}

private void ThisDocument_Shutdown(object sender, System.EventArgs e)
{
}

El ejemplo de código siguiente muestra los controladores de eventos predeterminados en los proyectos de nivel de documento para Excel.

[!NOTA]

En el ejemplo de código siguiente se muestran los controladores de eventos de la clase Sheet1.Los nombres de los controladores de eventos de otras clases de elementos host corresponden al nombre de clase.Por ejemplo, en la clase Sheet2, el controlador de eventos Startup se denomina Sheet2_Startup.En la clase ThisWorkbook, el controlador de eventos Startup se denomina ThisWorkbook_Startup.

Private Sub Sheet1_Startup(ByVal sender As Object, ByVal e As System.EventArgs) _
    Handles Me.Startup

End Sub

Private Sub Sheet1_Shutdown(ByVal sender As Object, ByVal e As System.EventArgs) _
    Handles Me.Shutdown

End Sub
private void Sheet1_Startup(object sender, System.EventArgs e)
{
}

private void Sheet1_Shutdown(object sender, System.EventArgs e)
{
}

7xy91eax.collapse_all(es-es,VS.110).gifOrden de los eventos en los proyectos de Excel de nivel de documento

Los controladores de eventos Startup en los proyectos de Excel se invocan en este orden:

  1. ThisWorkbook_Startup.

  2. Sheet1_Startup.

  3. Sheet2_Startup.

  4. Sheet3_Startup.

  5. Otras hojas en orden.

Los controladores de eventos Shutdown en una solución de libro se invocan en este orden:

  1. ThisWorkbook_Shutdown.

  2. Sheet1_Shutdown.

  3. Sheet2_Shutdown.

  4. Sheet3_Shutdown.

  5. Otras hojas en orden.

El orden se determina cuando se compila el proyecto.Si el usuario reorganiza las hojas en tiempo de ejecución, el orden en que se generan los eventos no cambiará la próxima vez que se abra o se cierre el libro.

Proyectos de nivel de aplicación

Visual Studio proporciona código generado en los complementos de nivel de aplicación.Este código genera dos eventos diferentes: Startup y Shutdown.

7xy91eax.collapse_all(es-es,VS.110).gifEvento Startup

El evento Startup se genera cuando el complemento se carga y se ha ejecutado todo el código de inicialización del ensamblado.El método ThisAddIn_Startup del archivo de código generado administra este evento.

El código del controlador de eventos ThisAddIn_Startup es el primer código de usuario que se ejecuta, a menos que el complemento invalide el método RequestComAddInAutomationService.En este caso, se llama al controlador de eventos ThisAddIn_Startup después de RequestComAddInAutomationService.

No agregue el código del controlador de eventos ThisAdd-In_Startup si el código requiere un documento abrir.En su lugar, agregue este código a un evento que la aplicación de Office active cuando un usuario crea o abre un documento.Para obtener más información, vea Tener acceso a un documento Cuando se inicia la aplicación de Office.

Para obtener más información acerca de la secuencia de arranque en los complementos, vea Arquitectura de los complementos de nivel de aplicación.

7xy91eax.collapse_all(es-es,VS.110).gifEvento Shutdown

El evento Shutdown se genera cuando está a punto de descargarse el dominio de aplicación donde está cargado el código.El método ThisAddIn_Shutdown del archivo de código generado administra este evento.Este controlador de eventos es el último código de usuario que se ejecuta al descargar el complemento.

7xy91eax.collapse_all(es-es,VS.110).gifEvento shutdown en Outlook Agregar- INS

Se provoca el evento Shutdown sólo cuando el usuario deshabilita el complemento mediante el cuadro de diálogo complementos COM de Outlook.No se genera cuando se cierra Outlook.Si tiene código que se debe ejecutar al salir de Outlook, controle uno de los eventos siguientes:

[!NOTA]

Puede obligar a Outlook a que genere el evento Shutdown cuando se cierre modificando el Registro.Sin embargo, si un administrador revierte esta configuración, cualquier código que agregue al método ThisAddIn_Shutdown ya no se ejecutará al salir de Outlook.Para obtener más información, vea Cambios de apagado de Outlook 2010.

Vea también

Tareas

Cómo: Crear proyectos de Office en Visual Studio

Otros recursos

Desarrollar soluciones de Office

Programar personalizaciones de nivel de documento

Programar complementos de nivel de aplicación

Información general sobre las plantillas de Office Project