Compartir a través de


Uso de controles de WPF en soluciones de Office

Aunque las soluciones creadas con las herramientas de desarrollo de Visual Studio para Office están diseñadas para funcionar directamente con controles de Windows Forms, también puede usar controles WPF en sus soluciones. Windows Presentation Foundation (WPF) es una alternativa a los formularios Windows Forms para diseñar interfaces de usuario. WPF utiliza un lenguaje de marcado denominado lenguaje XAML que proporciona nuevas técnicas con el fin de incorporar interfaces de usuario, multimedia y documentos. Para más información, consulte Introducción a WPF.

Aplicación: la información de este tema se aplica a los proyectos de nivel de documento y a los proyectos de complemento de VSTO. Consulte las Características disponibles por tipo de proyecto y aplicación de Office.

Cualquier elemento de la interfaz de usuario que pueda hospedar controles de Windows Forms en una solución de Office también puede hospedar controles WPF. Pueden incluir los siguientes elementos:

  • Documentos y hojas de cálculo en personalizaciones de nivel de documento.

  • Paneles de acciones en personalizaciones de nivel de documento.

  • Paneles de tareas personalizados en complementos de VSTO.

  • Áreas de formulario en complementos de VSTO para Outlook.

Adición de controles de WPF a proyectos de Office en tiempo de diseño

No puede agregar controles WPF directamente a los elementos de la interfaz de usuario en las soluciones de Office. En su lugar, agregue un elemento Control de usuario (WPF) al proyecto y úselo como superficie de diseño para controles WPF. A continuación, agregue el control de usuario de WPF a un elemento de la interfaz de usuario del proyecto.

Para agregar controles de WPF a un panel de acciones, panel de tareas personalizado o área de formulario

  1. Abra un proyecto al que desea agregar un panel de tareas personalizado, un panel de acciones o un área de formulario.

  2. Agregue un nuevo elemento de Control de usuario (WPF) a su proyecto.

  3. En el Cuadro de herramientas, agregue controles WPF a la superficie de diseño del control de usuario de WPF.

    De forma predeterminada, cuando el diseñador de controles de usuario de WPF está abierto, el Cuadro de herramientas solo contiene controles WPF.

  4. Compile el proyecto.

  5. Agregue un panel de acciones, área de formulario o panel de tareas personalizado al proyecto:

  6. Desde la pestaña Nombre del proyecto Controles de usuario de WPF del Cuadro de herramientas, arrastre el control de usuario de WPF al diseñador para el panel de acciones, la región del formulario o el panel de tareas personalizado.

    Visual Studio crea automáticamente un objeto ElementHost que hospeda el control de usuario de WPF en el elemento de la interfaz de usuario.

  7. Recompile el proyecto.

Para agregar controles de WPF a un documento u hoja de cálculo en un proyecto de nivel de documento

  1. Abra un proyecto de nivel de documento para Word o Excel.

  2. Agregue un nuevo elemento de Control de usuario (WPF) a su proyecto.

  3. En el Cuadro de herramientas, agregue controles WPF a la superficie de diseño del control de usuario de WPF.

  4. Compile el proyecto.

  5. Agregue un elemento de Control de usuario (es decir, un control de usuario de Windows Forms) al proyecto.

  6. Abra el diseñador para el control de usuario de formularios Windows Forms.

  7. Desde la pestaña Nombre del proyecto Controles de usuario de WPF del Cuadro de herramientas, arrastre el control de usuario de WPF al diseñador.

    Visual Studio crea automáticamente un objeto ElementHost que hospeda el control de usuario de WPF en el control de usuario de formularios Windows Forms.

  8. Escriba código que agregue mediante programación el control de usuario de formularios Windows Forms al documento o libro. Para obtener más información, consulte Agregar controles a documentos de Office en tiempo de ejecución.

    Nota:

    No puede arrastrar el control de usuario de formularios Windows Forms hacia el documento o la hoja de cálculo en el diseñador.

  9. Recompile el proyecto.

Hospedaje de controles de WPF mediante la clase ElementHost

Visual Studio proporciona características que le ayudan a usar controles de Windows Forms en las soluciones de Office, pero no proporciona características similares para los controles WPF. Por ejemplo, puede agregar controles de Windows Forms a documentos y hojas de cálculo en tiempo de diseño arrastrando controles desde el Cuadro de herramientas o en tiempo de ejecución mediante métodos auxiliares. Sin embargo, estas herramientas no están disponibles para los controles de WPF.

Los controles de WPF utilizan la clase ElementHost como una capa de la integración entre un control de formularios Windows Forms y los controles de WPF. Al agregar controles de WPF a la solución en tiempo de diseño, Visual Studio genera automáticamente un objeto ElementHost.

Recursos de WPF

Para obtener más información sobre los problemas de arquitectura y diseño relacionados con el hospedaje de controles de WPF en controles de formularios y formularios Windows Forms, vea los temas siguientes:

Para obtener más información sobre cómo agregar controles de WPF a los controles de formularios y formularios Windows Forms en Visual Studio en tiempo de diseño, vea los temas siguientes: