チュートリアル : デザイン時における Windows フォーム上での新しい Windows Presentation Foundation コンテンツの作成
更新 : 2007 年 11 月
このトピックでは、Windows フォーム ベースのアプリケーションで使用するための Windows Presentation Foundation (WPF) コントロールの作成方法について説明します。
このチュートリアルでは次のタスクを行います。
プロジェクトを作成します。
新しい WPF コントロールを作成します。
新しい WPF コントロールを Windows フォームに追加します。WPF コントロールは ElementHost コントロールでホストされます。
メモ : |
---|
使用している設定またはエディションによっては、表示されるダイアログ ボックスやメニュー コマンドがヘルプに記載されている内容と異なる場合があります。設定を変更するには、[ツール] メニューの [設定のインポートとエクスポート] をクリックします。詳細については、「Visual Studio の設定」を参照してください。 |
前提条件
このチュートリアルを完了するには、次のコンポーネントが必要です。
- Visual Studio 2008
プロジェクトの作成
まず、Windows フォーム プロジェクトを作成します。
メモ : |
---|
WPF コンテンツをホストする場合は、C# プロジェクトと Visual Basic プロジェクトのみがサポートされます。 |
プロジェクトを作成するには
- HostingWpf という名前の新しい Windows フォーム プロジェクトを Visual Basic または Visual C# で作成します。詳細については、「方法 : Windows アプリケーション プロジェクトを作成する」を参照してください。
新しい WPF コントロールの作成
新しい WPF コントロールの作成とプロジェクトへの追加は、プロジェクトに他のアイテムを追加する場合と同じように簡単です。Windows フォーム デザイナは、複合コントロールと呼ばれる一種のコントロールまたはユーザー コントロールで使用します。WPF ユーザー コントロールの詳細については、UserControl の説明を参照してください。
メモ : |
---|
WPF の System.Windows.Controls.UserControl 型は、Windows フォームが提供する System.Windows.Forms.UserControl というユーザー コントロールと区別されます。 |
新しい WPF コントロールを作成するには
ソリューション エクスプローラで、新しい [ユーザー コントロール (WPF)] アイテムをプロジェクトに追加します。名前はこのコントロール型による既定である UserControl1 を使用します。詳細については、「方法 : ソリューション項目を追加および削除する」を参照してください。既定の名前である UserControl1.xaml を使用します。
新しいコントロールを追加すると、次の処理が実行されます。
UserControl1.xaml ファイルがプロジェクトに追加されます。
UserControl1.xaml.cs ファイルまたは UserControl1.xaml.vb ファイルがプロジェクトに追加されます。このファイルには、イベント ハンドラなどの実装のための分離コードが含まれています。
WPF アセンブリへの参照がプロジェクトに追加されます。
UserControl1.xaml ファイルが Windows Presentation Foundation (WPF) Designer for Visual Studio で開きます。
デザイン ビューで UserControl1 が選択されていることを確認します。詳細については、「方法 : デザイン画面上で要素を選択して移動する」を参照してください。
[ツールボックス] からデザイン サーフェイスに System.Windows.Controls.TextBox コントロールをドラッグします。
[プロパティ] ウィンドウで、Text プロパティの値を Hosted Content に設定します。
メモ : 一般的には、さらに高度な WPF コンテンツを使用します。ここでは、System.Windows.Controls.TextBox コントロールを説明する目的でのみ使用しています。
プロジェクトをビルドします。
WPF コントロールの Windows フォームへの追加
新しい WPF コントロールをフォームで使用する準備ができました。Windows フォームでは、WPF コンテンツをホストするのに ElementHost コントロールを使用します。
WPF コントロールを Windows フォームに追加するには
Windows フォーム デザイナで Form1 を開きます。
[ツールボックス] で、[HostingWpf WPF ユーザー コントロール] というラベルのタブを探します。
UserControl1 のインスタンスをフォームへドラッグします。
ElementHost コントロールが WPF コントロールのホスト用としてフォームに自動作成されます。
ElementHost コントロールは elementHost1 と名付けられます。[プロパティ] ウィンドウでは、その Child プロパティが [UserControl1] に設定されていることを確認できます。
WPF アセンブリへの参照がプロジェクトに追加されます。
elementHost1 コントロールにはスマート タグ パネルがあり、使用可能なホスト オプションが表示されます。
[ElementHost タスク] スマート タグ パネルで [親コンテナにドッキングする] をクリックします。
F5 キーを押してアプリケーションをビルドし、実行します。
次の手順
Windows フォームと WPF は異なるテクノロジですが、緊密な相互運用が実現されるよう設計されています。アプリケーションの外観や動作を多彩にするために、次を試してください。
Windows フォーム コントロールを WPF ページでホストします。詳細については、「チュートリアル : Windows Presentation Foundation での Windows フォーム コントロールのホスト」を参照してください。
Windows フォームの visual スタイルを WPF コンテンツに適用します。詳細については、「方法 : ハイブリッド アプリケーションで視覚スタイルを有効にする」を参照してください。
WPF コンテンツのスタイルを変更します。詳細については、「チュートリアル : Windows Presentation Foundation のコンテンツにスタイルを適用する」を参照してください。