チュートリアル: デザイン時に Windows フォームで新しい WPF コンテンツを作成する
この記事では、Windows フォーム ベースのアプリケーションで使用する Windows Presentation Foundation (WPF) コントロールを作成する方法を示します。
必須コンポーネント
このチュートリアルを完了するには Visual Studio が必要です。
プロジェクトの作成
Visual Studio を開き、Visual Basic または Visual C# で HostingWpf
という名前の新しい Windows フォーム アプリ (.NET Framework) プロジェクトを作成します。
注意
WPF コンテンツをホストする場合は、C# プロジェクトと Visual Basic プロジェクトのみがサポートされます。
新しい WPF コントロールを作成する
新しい WPF コントロールを作成し、プロジェクトに追加するのは、プロジェクトへの他の項目の追加と同じくらい簡単です。 Windows フォーム デザイナーは、"複合コントロール" または "ユーザー コントロール" という名前の特定の種類のコントロールと連携します。 WPF ユーザー コントロールの詳細については、「UserControl」を参照してください。
注意
WPF の System.Windows.Controls.UserControl の種類は、同じ System.Windows.Forms.UserControl という名前を持つ、Windows フォームで提供されるユーザー コントロールの種類とは区別されます。
新しい WPF コントロールを作成するには:
ソリューション エクスプローラーで、新しい WPF ユーザー コントロール ライブラリ (.NET Framework) プロジェクトをソリューションに追加します。 このコントロール ライブラリの既定の名前である
WpfControlLibrary1
を使用します。 既定のコントロールの名前はUserControl1.xaml
です。新しいコントロールを追加すると次の影響があります。
ファイル UserControl1.xaml が追加されます。
ファイル UserControl1.xaml.cs (または UserControl1.xaml.vb) が追加されます。 このファイルには、イベント ハンドラーとその他の実装のための分離コードが含まれています。
WPF アセンブリへの参照が追加されます。
ファイル UserControl1.xaml が WPF Designer for Visual Studio で開かれます。
デザイン ビューで
UserControl1
が選択されていることを確認します。ツールボックスから、System.Windows.Controls.TextBox コントロールをデザイン画面にドラッグします。
[プロパティ] ウィンドウで、Text プロパティの値を [ホストするコンテンツ] に設定します。
注意
一般的には、もう少し高度な WPF コンテンツをホストしてください。 ここでは、説明する目的でのみ System.Windows.Controls.TextBox コントロールを使用しています。
プロジェクトをビルドします。
WPF コントロールを Windows フォームに追加する
新しい WPF コントロールは、フォームで使用可能な状態です。 Windows フォームでは、ElementHost コントロールを使用して、WPF コンテンツがホストされます。
WPF コントロールを Windows フォームに追加するには:
Windows フォーム デザイナーで
Form1
を開きます。ツールボックスで、 [WPFUserControlLibrary WPF ユーザー コントロール] というラベルの付いたタブを探します。
UserControl1
のインスタンスをフォームにドラッグします。WPF コントロールをホストするためのフォームの上に、ElementHost コントロールが自動的に作成されます。
ElementHost コントロールに
elementHost1
という名前が付き、 [プロパティ] ウィンドウで Child プロパティが UserControl1 に設定されていることが確認できます。WPF アセンブリへの参照がプロジェクトに追加されます。
elementHost1
コントロールに、使用可能なホスティング オプションを示すスマート タグ パネルがあります。
ElementHost タスクのスマート タグ パネルで、 [親コンテナーにドッキング] を選択します。
F5 キーを押してアプリケーションをビルドし、実行します。
次のステップ
Windows フォームと WPF は異なるテクノロジですが、密接に相互運用するよう設計されています。 アプリケーションに高度な外観と動作を提供するには、次の手順を実行します。
WPF ページで Windows フォーム コントロールをホストします。 詳細については、「チュートリアル: WPF での Windows フォーム コントロールのホスト」を参照してください。
WPF コンテンツに Windows フォームの視覚スタイルを適用します。 詳細については、「方法: ハイブリッド アプリケーションで視覚スタイルを有効にする」を参照してください。
WPF コンテンツのスタイルを変更します。 詳細については、「チュートリアル: WPF コンテンツへのスタイルの適用」を参照してください。
関連項目
.NET Desktop feedback