2 つの既存のアプリケーションを 1 つに統合したいと考えています。これらのアプリの 1 つは Windows フォームで構築され、もう 1 つは WPF で構築されています。
これを達成することは可能ですか?
WPF はWindowsFormsHost
、WPF ウィンドウ内で WinForms コントロールをホストできるようにするクラスを提供します。逆に、WinForms はElementHost
、フォーム内で WPF コントロールをホストできるようにします。
残念ながら、物事がうまくいくかどうかは、あなたが何をしているかに大きく依存しています. 詳細については、必ずこの MSDN ページから始めてください。
「独立した」WPF ウィンドウと WinForms フォームを同じアプリケーション内に配置したい場合は、両方のフレームワークが UI スレッドのメッセージ ループ内のコードを「共有」する必要があります。その方法の入門書については、こちらを参照してください。
これに役立つさまざまなクラスがあります。WPF ウィンドウで Windows フォーム コントロールをホストするには、クラス
を使用できます。Windows フォーム ウィンドウで WPF コントロールをホストするには、クラス WindowsFormsHost
を使用できます。ElementHost
この件に関する詳細については、こちらを参照してください (Windows フォーム セクション):
http://msdn.microsoft.com/en-us/library/ms753178.aspx