Pregunta

Estoy tratando de usar WindowsFormsHost en una aplicación WPF para poder usar algunos componentes de Windows Forms.

<Grid>
    <WindowsFormsHost>

    </WindowsFormsHost>
</Grid>

Todo esto funciona bien sin errores, pero cuando voy a arrastrar un componente de formularios Windows Forms desde la caja de herramientas en VS2008, todos están en gris. En cierto modo, esto tiene sentido, ya que solo los componentes WPF están disponibles. Pero, ¿cómo sueltas un componente de Windows Forms en un WindowsFormsHost si todos están en gris y no están disponibles?

¿Fue útil?

Solución

No creo que el diseñador WPF sea compatible con los componentes de Windows Forms. Debe especificarlos en XAML o en el código. Un ejemplo simple de cómo agregar un botón WinForms en una aplicación WPF. Tenga en cuenta que el botón no está visible en la superficie de diseño.

<Window x:Class="DataTemplateBind.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:forms="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"
    Title="Window1" Height="300" Width="300">

    <WindowsFormsHost Height="200" Name="windowsFormsHost1" Width="258" >
        <forms:Button Text="Waaa :("></forms:Button>
    </WindowsFormsHost>
</Window>

Tenga en cuenta el espacio de nombres xmlns: formularios agregado que no está allí por defecto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top