Compartir a través de


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

En este artículo se muestra cómo crear un control de Windows Presentation Foundation (WPF) para su uso en las aplicaciones basadas en Windows Forms.

Prerrequisitos

Necesita Visual Studio para completar este tutorial.

Creación del proyecto

Abra Visual Studio y cree un proyecto de aplicación de Windows Forms (.NET Framework) en Visual Basic o Visual C# denominado HostingWpf.

Nota:

Al hospedar contenido de WPF, solo se admiten proyectos de C# y Visual Basic.

Crear un nuevo control WPF

Crear un nuevo control WPF y agregarlo al 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 sobre los controles de usuario de WPF, vea UserControl.

Nota:

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

Para crear un nuevo control WPF:

  1. En el Explorador de soluciones, agregue un nuevo proyecto de biblioteca de control de usuarios (.NET Framework) de WPF a la solución. Use el nombre predeterminado de la biblioteca de controles, WpfControlLibrary1. El nombre de control predeterminado es UserControl1.xaml.

    Agregar el nuevo control tiene los siguientes efectos:

    • Se agrega el archivo UserControl1.xaml.

    • Se añade el archivo UserControl1.xaml.cs (o UserControl1.xaml.vb). Este archivo contiene el código subyacente para controladores de eventos y otra implementación.

    • Se agregan referencias a ensamblados de WPF.

    • El archivo UserControl1.xaml se abre en WPF Designer para Visual Studio.

  2. En la vista Diseño, asegúrese de que UserControl1 está seleccionado.

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

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

  5. En la ventana Propiedades , establezca el valor de la Text propiedad en Contenido hospedado.

    Nota:

    En general, debe hospedar contenido WPF más sofisticado. El System.Windows.Controls.TextBox control se usa aquí solo con fines ilustrativos.

  6. Compile el proyecto.

Agregar un control WPF a un formulario Windows Forms

El nuevo control WPF está listo para su uso en el formulario. Windows Forms usa el ElementHost control para hospedar contenido de WPF.

Para agregar un control 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 con la etiqueta WPFUserControlLibrary Controles de usuario de WPF.

  3. Arrastre una instancia de UserControl1 al formulario.

    • Un ElementHost control se crea automáticamente en el formulario para hospedar el control WPF.

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

    • Las referencias a ensamblados de WPF se agregan al proyecto.

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

  4. En el panel de tareas ElementHost Tasks, seleccione Acoplar en el contenedor primario.

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

Pasos siguientes

Windows Forms y WPF son tecnologías diferentes, pero están diseñadas para interoperar estrechamente. Para proporcionar una apariencia y un comportamiento más enriquecidos en las aplicaciones, pruebe lo siguiente:

Consulte también