Compartir a través de


Tutorial: Crear nuevo contenido de WPF en Windows Forms en tiempo de diseño

En este tema se muestra cómo crear un control de Windows Presentation Foundation (WPF) para utilizarlo en sus aplicaciones basadas en formularios Windows Forms.

En este tutorial realizará las siguientes tareas:

  • Crear el proyecto.

  • Crear un nuevo control de WPF.

  • Agregar el nuevo control de WPF a un formulario Windows Forms. El control de WPF se hospeda en un control ElementHost.

Nota

Los cuadros de diálogo y comandos de menú que se ven pueden diferir de los descritos en la Ayuda, en función de los valores de configuración o de edición activos. Para cambiar la configuración, elija la opción Importar y exportar configuraciones del menú Herramientas. Para obtener más información, vea Trabajar con valores de configuración.

Requisitos previos

Necesita los componentes siguientes para completar este tutorial:

  • Visual Studio 2008.

Creación del proyecto

El primer paso es crear el proyecto de formularios Windows Forms.

Nota

Cuando se hospeda contenido WPF, sólo se admiten proyectos de C# y Visual Basic.

Para crear el proyecto

Crear un nuevo control de WPF

Crear un nuevo control de WPF y agregarlo a un proyecto es tan fácil como agregar cualquier otro elemento al proyecto. El Diseñador de Windows Forms funciona con un tipo determinado de control denominado control compuesto o control de usuario. Para obtener más información acerca de los controles de usuario de WPF, vea UserControl.

Nota

El tipo System.Windows.Controls.UserControl de WPF es distinto del tipo de control de usuario proporcionado por los formularios Windows Forms, que también se denomina System.Windows.Forms.UserControl.

Para crear un nuevo control de WPF

  1. En el Explorador de soluciones, agregue un nuevo proyecto Biblioteca de controles de usuario de WPF a la solución. Use el nombre predeterminado para la biblioteca de controles, WpfControlLibrary1. El nombre de control predeterminado es UserControl1.xaml.

    Al agregar el nuevo control ocurre lo siguiente.

    • Se agrega el archivo UserControl1.xaml.

    • Se agrega el archivo UserControl1.xaml.cs o UserControl1.xaml.vb. Este archivo contiene el código subyacente para los controladores de eventos y otra implementación.

    • Se agregan referencias a ensamblados de WPF.

    • Se abre el archivo UserControl1.xaml en WPF Designer for Visual Studio.

  2. En la vista de diseño, asegúrese de que UserControl1 está seleccionado. Para obtener más información, consulte Cómo: Seleccionar y mover elementos en la superficie de diseño.

  3. En la ventana Propiedades, establezca el valor de las propiedades Width y Height en 200.

  4. En el Cuadro de herramientas, arrastre un control System.Windows.Controls.TextBox a la superficie de diseño.

  5. En la ventana Propiedades, establezca el valor de la propiedad Text en Hosted Content.

    Nota

    En general, debería hospedar contenido de WPF más complejo. El control System.Windows.Controls.TextBox se utiliza aquí únicamente con fines ilustrativos.

  6. Compile el proyecto.

Agregar un control de WPF a un formulario Windows Forms

Su nuevo control de WPF está listo para utilizarlo en el formulario. Formularios Windows Forms utiliza el control ElementHost para hospedar el contenido de WPF

Para agregar un control de WPF a un formulario Windows Forms

  1. Abra Form1 en el Diseñador de Windows Forms.

  2. En el Cuadro de herramientas, busque la pestaña Controles de usuario de WPF WPFUserControlLibrary.

  3. Arrastre una instancia de UserControl1 al formulario.

    • Se crea automáticamente un control ElementHost en el formulario para hospedar el control de WPF.

    • El control ElementHost se denomina elementHost1, y en la ventana Propiedades puede ver su propiedad Child establecida en UserControl1.

    • Se agregan las referencias a los ensamblados de WPF al proyecto.

    • El control elementHost1 tiene un panel de etiquetas inteligentes que muestra las opciones de hospedaje disponibles.

  4. En el panel de etiquetas inteligentes Tareas de ElementHost, seleccione Acoplar en contenedor principal.

  5. Presione F5 para compilar y ejecutar la aplicación.

Pasos siguientes

Formularios Windows Forms y WPF son tecnologías diferentes, pero están diseñadas para operar estrechamente entre sí. Para proporcionar un aspecto y comportamiento más avanzado en sus aplicaciones, pruebe lo siguiente.

Vea también

Referencia

ElementHost

WindowsFormsHost

Otros recursos

Migración e interoperabilidad

Utilizar controles WPF

WPF Designer