2013-06-03 9 views
5

Meine Anwendung wird mit WinForms entwickelt. Ist es möglich, die WPF DataGrid, Button, ListBox, ComboBox usw. in WinForms-Benutzersteuerelementen zu hosten?Hosting von WPF-Steuerelementen in Winforms

+2

Was haben Sie versucht? Es ist viel einfacher für die Community, Hilfe bereitzustellen, wenn Sie versuchen, dann mit gezielteren Fragen zu einem Problem zu kommen. Ja oder Nein Fragen sind nicht sehr konstruktiv (Siehe die ersten beiden Abschnitte der FAQ http://stackoverflow.com/faq) Zum Beispiel, ich weiß nicht wirklich etwas über WinForms oder WPF Kontrollen, aber eine schnelle Google-Suche gab mir eine Reihe von Links, die relevant genug erscheinen, um diese Frage zu beantworten. Hier war der erste auf der Liste: http://msdn.microsoft.com/en-us/library/ms742215.aspx – MattDavis

Antwort

7

Ja, es ist möglich, das Steuerelement ElementHost in Winforms zu verwenden und darin WPF-Inhalt zu hosten.

+2

Um hinzuzufügen, kann es schrecklich langsam sein .. Ich musste einige WPF-Komponenten auf einem Legacy hinzufügen WinForms Programm .. Was ich getan habe, war das ElementHost asynchron zu laden, was die Leistung verbessert. –

0

Ich würde WinForm und WPF nicht mischen, wenn es absolut notwendig ist. Microsoft hat jedoch die Möglichkeit bereitgestellt, WPF-Steuerelement in WinForm und umgekehrt zu verwenden, aber es gibt nicht immer ein gutes Ergebnis. WF und WPF rendern die Steuerelemente auf verschiedene Arten und Sie können mehrere Probleme auftreten, einschließlich Leistung und UI-Flimmern, je nachdem, wie sie verwendet wurden.

Wenn Sie wirklich WPF-Steuerelement in WF verwenden möchten, verwenden Sie ElementHost-Steuerelement.

ElementHost.Child = wpfControl;