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
Abra un proyecto al que desea agregar un panel de tareas personalizado, un panel de acciones o un área de formulario.
Agregue un nuevo elemento de Control de usuario (WPF) a su proyecto.
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.
Compile el proyecto.
Agregue un panel de acciones, área de formulario o panel de tareas personalizado al proyecto:
En el caso de las áreas del formulario, agregue un elemento de Región del formulario de Outlook al proyecto. Para obtener más información, consulte Cómo: Agregar una región de formulario a un proyecto de complemento de Outlook.
Para los paneles de acciones, agregue un elemento de Control de panel de acciones o Control de usuario al proyecto. Para obtener más información, consulte Cómo: Agregar un panel de acciones a documentos de Word o libros de Excel.
Para los paneles de tareas personalizados, agregue un elemento de Control de usuario al proyecto. Para obtener más información, consulte Cómo: Agregar un panel de tareas personalizado a una aplicación.
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.
Recompile el proyecto.
Para agregar controles de WPF a un documento u hoja de cálculo en un proyecto de nivel de documento
Abra un proyecto de nivel de documento para Word o Excel.
Agregue un nuevo elemento de Control de usuario (WPF) a su proyecto.
En el Cuadro de herramientas, agregue controles WPF a la superficie de diseño del control de usuario de WPF.
Compile el proyecto.
Agregue un elemento de Control de usuario (es decir, un control de usuario de Windows Forms) al proyecto.
Abra el diseñador para el control de usuario de formularios Windows Forms.
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.
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.
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:
Tutorial: Crear nuevo contenido WPF en Windows Forms en tiempo de diseño
Tutorial: Organización de contenido de WPF en Windows Forms en tiempo de diseño
Contenido relacionado
- Personalización de la interfaz de usuario de Office
- Información general sobre controles de Windows Forms en documentos de Office
- Información general sobre paneles de acciones
- Paneles de tareas personalizados
- Creación de regiones de formularios de Outlook
- Cómo: Agregar un panel de acciones a documentos de Word o libros de Excel
- Cómo: Agregar un panel de tareas personalizado a una aplicación
- Cómo: Agregar una región de formulario a un proyecto de complemento de Outlook