Windows Forms Komponenten lassen sich in WPF-Anwendungen einbinden.
Zuerst müssen wir dem WPF-Projekt folgende Referenzen hinzufügen:
- WindowsFormsIntegration
- System.Windows.Forms

Unser Beispielfenster sieht so aus:
<StackPanel Orientation="Vertical"
Margin="20">
<TextBlock Text="Winforms Integration into WPF"
FontSize="20"
FontWeight="DemiBold"></TextBlock>
<Grid x:Name="GridWinforms" Margin="0, 10, 0, 10"></Grid>
<Button Content="WPF Button"></Button>
</StackPanel>
In das Grid wollen wir nun unsere Windows Forms Komponente einbinden, dies können wir in der OnLoaded Methode des Fensters erledigen:
private void MainWindow_OnLoaded(object sender, RoutedEventArgs e)
{
var host = new System.Windows.Forms.Integration.WindowsFormsHost();
var button = new System.Windows.Forms.Button();
button.Text = "Windows Forms Button";
button.Click += Button_Click;
host.Child = button;
GridWinforms.Children.Add(host);
}
Fertig, nach dem Start wird der Windows Forms Button angezeigt.

