Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se muestra cómo usar las características de diseño de Windows Forms, como el delimitador y las líneas de acoplamiento, para organizar controles de Windows Presentation Foundation (WPF).
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 en Visual Basic o Visual C# denominado ArrangeElementHost.
Nota:
Al hospedar contenido de WPF, solo se admiten proyectos de C# y Visual Basic.
Creación del control WPF
Después de agregar un control WPF al proyecto, puede organizarlo en el formulario.
Agregue un nuevo WPF UserControl al proyecto. Use el nombre predeterminado para el tipo de control,
UserControl1.xaml. Para obtener más información, vea Guía paso a paso: Crear nuevo contenido de WPF en tiempo de diseño en formularios de Windows Forms.En la vista Diseño, asegúrese de que
UserControl1está seleccionado.En la ventana Propiedades , establezca el valor de las Width propiedades y Height en 200.
Establezca el valor de la Background propiedad en Azul.
Compile el proyecto.
Hospedar controles WPF en un panel de diseño
Puedes usar controles WPF en paneles de diseño de la misma manera que usas otros controles de Windows Forms.
Abra
Form1en el Diseñador de Windows Forms.En el Cuadro de herramientas, arrastre un TableLayoutPanel control al formulario.
En el TableLayoutPanel panel de etiquetas inteligentes del control, seleccione Quitar última fila.
Cambie el tamaño del TableLayoutPanel control a un ancho y alto mayor.
En el Cuadro de herramientas, haga doble clic
UserControl1para crear una instancia deUserControl1en la primera celda del TableLayoutPanel control.La instancia de
UserControl1se hospeda en un nuevo ElementHost control denominadoelementHost1.En el Cuadro de herramientas, haga doble clic
UserControl1para crear otra instancia en la segunda celda del TableLayoutPanel control.En la ventana Esquema del documento , seleccione
tableLayoutPanel1.En la ventana Propiedades , establezca el valor de la Padding propiedad en 10, 10, 10, 10, 10.
Ambos ElementHost controles se cambian de tamaño para ajustarse al nuevo diseño.
Usar líneas guías para alinear controles WPF
Las líneas de ajuste permiten una alineación sencilla de los controles de un formulario. También puede utilizar líneas de ajuste para alinear los controles WPF. Para obtener más información, vea Tutorial: Organizar controles en formularios Windows Forms mediante líneas de ajuste.
En el Cuadro de herramientas, arrastre una instancia de
UserControl1al formulario y colóquela en el espacio debajo del TableLayoutPanel control.La instancia de
UserControl1se hospeda en un nuevo ElementHost control denominadoelementHost3.Con las líneas de ajuste, alinee el borde izquierdo de
elementHost3con el borde izquierdo del control TableLayoutPanel.Ajuste el tamaño de
elementHost3al mismo ancho que el control TableLayoutPanel usando líneas de ajuste.Desplaza
elementHost3hacia TableLayoutPanel hasta que aparezca una línea guía central entre los controles.En la ventana Propiedades , establezca el valor de la propiedad Margin en 20, 20, 20, 20, 20.
Mueve el
elementHost3lejos del control TableLayoutPanel hasta que vuelva a aparecer la línea de acoplamiento central. La línea de ajuste central ahora indica un margen de 20.Vaya
elementHost3a la derecha hasta que su borde izquierdo se alinee con el borde izquierdo deelementHost1.Cambie el ancho de
elementHost3hasta que su borde derecho se alinee con el borde derecho deelementHost2.
Anclar y acoplar controles de WPF
Un control WPF hospedado en un formulario tiene el mismo comportamiento de anclaje y acoplamiento que otros controles de Windows Forms.
Seleccione
elementHost1.En la ventana Propiedades , establezca la Anchor propiedad en Top, Bottom, Left, Right.
Cambie el tamaño del TableLayoutPanel control a un tamaño mayor.
El
elementHost1control cambia de tamaño para rellenar la celda.Seleccione
elementHost2.En la ventana Propiedades, establezca el valor de la propiedad Dock en Fill.
El
elementHost2control cambia de tamaño para rellenar la celda.Seleccione el control TableLayoutPanel.
Seleccione
elementHost3.Establezca el valor de su Dock propiedad en Fill.
El
elementHost3control cambia el tamaño para rellenar el espacio restante en el formulario.Cambie el tamaño del formulario.
Los tres ElementHost controles se redimensionan adecuadamente.
Para obtener más información, vea Cómo anclar y acoplar controles secundarios en un control TableLayoutPanel.
Consulte también
- ElementHost
- WindowsFormsHost
- Cómo anclar y acoplar controles secundarios en un control TableLayoutPanel
- Cómo alinear un control a los bordes de los formularios durante el tiempo de diseño
- Guía paso a paso: Organizar controles en formularios de Windows Forms mediante líneas de ajuste
- Migración e interoperabilidad
- Usar controles WPF
- Diseño de XAML en Visual Studio
.NET Desktop feedback