Tutorial: Asignación de contenido de WPF en Windows Forms en tiempo de diseño
En este artículo se muestra cómo debe seleccionar los tipos de control de Windows Presentation Foundation (WPF) que quiere mostrar en el formulario. Puede seleccionar cualquier tipo de control de WPF incluido en el proyecto.
Prerrequisitos
Necesita Visual Studio para completar este tutorial.
Crear el proyecto
Abra Visual Studio y cree un proyecto de aplicación de Windows Forms en Visual Basic o Visual C# llamado SelectingWpfContent
.
Nota
Al hospedar contenido de WPF, solo se admiten proyectos de C# y Visual Basic.
Creación de los tipos de controles de WPF
Después de agregar los tipos de control WPF al proyecto, puede hospedarlos en diferentes controles ElementHost.
Agregue un nuevo proyecto de UserControl de WPF a la solución. Use el nombre predeterminado del tipo de control,
UserControl1.xaml
. Para obtener más información, consulte Tutorial: Creación de contenido de WPF en Windows Forms en tiempo de diseño.En la vista Diseño, asegúrese de que
UserControl1
está seleccionado.En la ventana Propiedades, establezca el valor de las propiedades Width y Height en 200.
Agregue un control System.Windows.Controls.TextBox al UserControl y establezca el valor de la propiedad Text en Hosted Content.
Agregue un segundo UserControl de WPF al proyecto. Use el nombre predeterminado del 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 al UserControl y establezca el valor de la propiedad Text en Hosted Content 2.
Nota:
Por lo general, debería hospedar contenido WPF más sofisticado. El control System.Windows.Controls.TextBox se usa aquí únicamente con fines ilustrativos.
Compile el proyecto.
Selección de los controles de WPF
Puede asignar contenido de WPF diferente a un control ElementHost, que ya hospeda contenido.
Abra
Form1
en el Diseñador de Windows Forms.En el Cuadro de herramientas, haga doble clic en
UserControl1
para crear una instancia deUserControl1
en el formulario.La instancia de
UserControl1
se hospeda en un nuevo control ElementHost llamadoelementHost1
.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
ahora hospeda una instancia del tipoUserControl2
.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 en la lista desplegable.
El control
elementHost2
ahora hospeda una instancia del tipoUserControl1
.
Consulte también
.NET Desktop feedback
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de