Tutorial: Asignar el contenido de WPF en Windows Forms en tiempo de diseño
En este tutorial se explica cómo seleccionar los tipos de controles de Windows Presentation Foundation (WPF) que desea mostrar en su formulario. Puede seleccionar cualquier tipo de control de WPF incluido en su proyecto.
En este tutorial realizará las siguientes tareas:
Crear el proyecto.
Crear los tipos de controles de WPF.
Seleccionar los controles de WPF.
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 2010.
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
- Cree un nuevo proyecto de aplicación de formularios Windows Forms en Visual Basic o Visual C# denominado SelectingWpfContent. Para obtener más información, consulte Cómo: Crear un nuevo proyecto de aplicación de Windows Forms.
Crear los tipos de controles de WPF
Después de agregar tipos de controles de WPF al proyecto, puede hospedarlos en controles ElementHost diferentes.
Para crear tipos de controles de WPF
Agregue un nuevo proyecto UserControl de WPF a la solución. Use el nombre predeterminado para el tipo de control, UserControl1.xaml. Para obtener más información, vea Tutorial: Crear nuevo contenido de WPF en Windows Forms en tiempo de diseño.
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.
En la ventana Propiedades, establezca el valor de las propiedades Width y Height en 200.
Agregue un control System.Windows.Controls.TextBox a UserControl y establezca el valor de la propiedad Text en Hosted Content.
Agregue un segundo control de WPF UserControl al proyecto. Use el nombre predeterminado para el tipo de control, UserControl2.xaml.
En la ventana Propiedades, establezca el valor de las propiedades Width y Height en 200.
Agregue un control System.Windows.Controls.TextBox a UserControl y establezca el valor de la propiedad Text en Hosted Content 2.
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.
- Compile el proyecto.
Seleccionar controles de WPF
Puede asignar contenido de WPF diferente a un control ElementHost, que ya hospede contenido.
Para seleccionar controles de WPF
Abra Form1 en el Diseñador de Windows Forms.
En el Cuadro de herramientas, haga doble clic en UserControl1 para crear una instancia de UserControl1 en el formulario.
Una instancia de UserControl1 se hospeda en un nuevo control ElementHost denominado elementHost1.
En el panel de etiquetas inteligentes de elementHost1, abra la lista desplegable Seleccionar contenido hospedable.
Seleccione UserControl2 en el cuadro de lista desplegable.
El control elementHost1 hospeda ahora una instancia del tipo UserControl2.
En la ventana Propiedades, confirme que la propiedad Child está establecida en UserControl2.
En el Cuadro de herramientas, en el grupo Interoperabilidad WPF, arrastre un control ElementHost al formulario.
El nombre predeterminado del nuevo control es elementHost2.
En el panel de etiquetas inteligentes de elementHost2, abra la lista desplegable Seleccionar contenido hospedable.
Seleccione UserControl1 de la lista desplegable.
El control elementHost2 hospeda ahora una instancia del tipo UserControl1.