WinFormIntegration サンプル:MFC アプリケーションで Windows フォーム ユーザー コントロールをホストする方法を示しています。

このサンプルでは、Windows フォーム ユーザー コントロールをダイアログまたはビューには、MFC アプリケーションとしてホストする方法を示します。

サンプルは、3 つの MFC 拡張 DLL、2 つの Windows フォーム ユーザー コントロール、および 1 つの主要な MFC MDI アプリケーションの構成されています。

EXTDLL1CWinFormsView を使用して、WinFormUserControlView1 ユーザー コントロールを MFC MDI app 内部に CView ウィンドウとしてホストします。 コマンド ルーティングを Windows フォーム ユーザー コントロールにメッセージの送信に使用します。

EXTDLL2 – Windows フォーム ユーザー コントロールが既存の CView ウィンドウ内の静的なコントロールとしてホストする方法を表示します。

CDialog の と CWinFormsDialog の を使用して EXTDLL3 – Encapsulates は、MFC ダイアログ ボックスで、Windows フォーム ユーザー コントロールをホストできるさまざまな方法を含みます。

WinFormUserControl1 – 追加一部コモン コントロールと共に基本的な Windows フォーム ユーザー コントロール。

WinFormUserControlView1 – MFC コマンド ルーティングおよび表示通知で Microsoft::VisualC::MFC::IView と参加 Microsoft::VisualC::MFC::ICommandTarget インターフェイスを実装する、Windows フォーム ユーザー コントロール。 これは、MFC を使用してファイルを保存して開く基本テキスト エディター (複数行の .NET TextBox コントロールを使用する) です。

MFC04 – これは、MFC 拡張 DLL を読み込むメイン MFC MDI app で、これらを異なる MFC doc テンプレートとして追加します。

セキュリティに関するメモセキュリティに関するメモ

このサンプル コードは概念を示すためのものであり、その概念に関連するコードのみを示しています。特定の環境について必ずしもセキュリティ要件を満たしていませんので、そのまま使用しないでください。セキュリティおよびエラー処理コードを追加して、プロジェクトをより安全かつ堅牢にすることをお勧めします。これらのサンプル コードは、現状有姿のままで提供されるものであり、一切保証されていません。

サンプルとそのインストール手順を取得するには

Visual Studio のサンプルにアクセスするには

  • [ヘルプ] メニューの [サンプル] をクリックします。

    既定では、これらのサンプルは drive:\Program Files\Microsoft Visual Studio 10.0\Samples\ にインストールされています。

  • このサンプルの最新版および他のサンプルの一覧については、MSDN Web サイト上で Visual Studio サンプル 」を参照してください。

サンプルをビルドして実行するには

  1. プロジェクトをビルドするには、MFC04.sln を開いて、[ビルド] メニューの [ソリューションのビルド] を選択します。

  2. 異なるシナリオを実行するには、app を起動して、[File] メニューの [New] を選択します。 次に、CView、CFormView、または Dialogs のいずれかのテンプレートを選択します。

    1. CView テンプレートは、編集可能な .NET 複数行編集ボックスを使用して CWinFormsView を開きます。 また、このテキスト ファイルと、もう一度使って MFC と のファイルを開くメニュー項目保存負荷に保存する機能があります。 変更の保存 ドロップダウン ボタンに、Windows フォーム を選択すると、StatusStrip 機能は、Windows フォームの保存を呼び出すことができます。 選択すると、MFC の CViewCmds-> テキスト MFC コマンドは、ホストされた Windows フォーム ユーザー コントロールにルーティングを示す、を Command1StatusStrip メニュー項目が更新されます。

    2. ホストされている点に の内部 CFormView リソース CFormView テンプレートが、同じ Windows フォーム ユーザー コントロールとして上になります。 このテンプレートではホスト コードだけが提供されています。"Save" 機能と "Open" 機能は実装されていません。

    3. ダイアログ テンプレートは、次のシナリオでは、Windows フォーム ユーザー コントロールを示すビューをホストです。呼び出す CDialog モーダル内部では、内側に CDialogCWinFormsDialog モーダル、呼び出されると、 CWinFormsDialog モードレスで呼び出されるとモードレスを呼び出します。 CWinFormsDialog 例は、Windows フォーム コントロールのイベントをフックの MFC 機能を示します。 これらの例は、文字列を CString を使用して System::String^ 変換演算子に渡す方法も示しています。

必要条件

サポートされているオペレーティング システム。Windows Server 2003、Windows XP

参照

参照

MFC の Windows フォームのサンプル