Domanda

Sto cercando di utilizzare WindowsFormsHost in un'app WPF in modo da poter utilizzare alcuni componenti di Windows Form.

<Grid>
    <WindowsFormsHost>

    </WindowsFormsHost>
</Grid>

Tutto funziona bene senza errori, ma quando vado a trascinare un componente di Windows Form dalla casella degli strumenti in VS2008, sono tutti in grigio. In un certo senso questo ha senso in quanto sono disponibili solo i componenti WPF. Ma come si fa a rilasciare un componente di Windows Form su WindowsFormsHost se sono tutti in grigio e non disponibili?

È stato utile?

Soluzione

Non credo che il designer WPF supporti i componenti di Windows Form. È necessario specificarli in XAML o nel codice. Un semplice esempio di come aggiungere un pulsante WinForms in un'applicazione WPF. Si noti che il pulsante non è visibile nell'area di progettazione.

<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>

Nota lo spazio dei nomi aggiunto xmlns: form che non è presente di default.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top