Freigeben über


WinFormIntegration-Beispiel: Veranschaulicht das Hosten eines WinForms-Benutzersteuerelements in einer MFC-Anwendung

Aktualisiert: November 2007

In diesem Beispiel wird veranschaulicht, wie ein WinForm-Benutzersteuerelement als Dialogfeld oder Ansicht in einer MFC-Anwendung gehostet wird.

Dieses Beispiel setzt sich aus drei MFC-Erweiterungs-DLLs, zwei WinForms-Benutzersteuerelementen und einer MFC-MDI-Anwendung zusammen:

EXTDLL1 – Verwendet CWinFormsView zum Hosten des WinFormUserControlView1-Benutzersteuerelements als ein CView-Fenster in der MFC-MDI-Anwendung. Außerdem wird Befehlsrouting zum Senden von Meldungen an das WinForms-Benutzersteuerelement verwendet.

EXTDLL2 – Veranschaulicht das Hosten eines WinForms-Benutzersteuerelements als ein statisches Steuerelement in einem vorhandenen CView-Fenster.

EXTDLL3 – Fasst die unterschiedlichen Möglichkeiten zum Hosten eines WinForms-Benutzersteuerelements in einem MFC-Dialogfeld zusammen, einschließlich CDialog und CWinFormsDialog.

WinFormUserControl1 – Ein einfaches WinForms-Benutzersteuerelement mit einigen zusätzlich hinzugefügten allgemeinen Steuerelementen.

WinFormUserControlView1 – Ein WinForms-Benutzersteuerelement, das die Microsoft::VisualC::MFC::IView-Schnittstelle und die Microsoft::VisualC::MFC::ICommandTarget-Schnittstelle implementiert, um beim MFC-Befehlsrouting und in Anzeigenbenachrichtigungen verwendet werden zu können. Dies ist ein einfacher Text-Editor (mit einem mehrzeiligen .NET-TextBox-Steuerelement), der MFC zum Speichern und Öffnen von Dateien verwendet.

MFC04 – Dies ist die MFC-MDI-Hauptanwendung, die die MFC-Erweiterungs-DLLs lädt und diese als unterschiedliche MFC-Dokumentvorlagen hinzufügt.

So rufen Sie Beispiele und Anweisungen für ihre Installation ab

  • Klicken Sie in Visual Studio im Menü Hilfe auf Beispiele.

    Weitere Informationen finden Sie unter Suchen von Beispieldateien.

  • Die neueste Version und vollständige Liste mit Beispielen ist online unter Visual Studio 2008 Samples verfügbar.

  • Sie können auch Beispiele auf der Festplatte des Computers suchen. Standardmäßig werden Beispiele und eine Infodatei in einen Ordner unter \Programme\Visual Studio 9.0\Samples\ kopiert. Für Express Editions von Visual Studio sind alle Beispiele online verfügbar.

So erstellen Sie das Beispiel und führen es aus

  1. Um die Projekte zu erstellen, öffnen Sie einfach MFC04.sln und wählen im Menü Erstellen die Option Projektmappe erstellen aus.

  2. Um die anderen Szenarios auszuführen, starten Sie die Anwendung und wählen im Menü Datei die Option Neu aus. Wählen Sie dann die Vorlagen CView, CFormView oder Dialogs aus:

    1. Die CView-Vorlage öffnet eine CWinFormsView mit einem mehrzeiligen .NET-Bearbeitungsfeld, das Sie bearbeiten können. Sie können diesen Text auch in einer Datei speichern und ihn mit den MFC-Menüelementen Speichern und Öffnen erneut laden. Sie können die Funktion Speichern aus den WinForms aufrufen, indem Sie im WinForms-StatusStrip die Dropdown-Schaltfläche Änderungen speichern auswählen. Wenn Sie das MFC-Menüelement CViewCmds->Command1 auswählen, wird der Text im StatusStrip aktualisiert, womit das MFC-Befehlsrouting zum gehosteten WinForms-Benutzersteuerelement veranschaulicht wird.

    2. Die CFormView-Vorlage ist mit dem oben beschriebenen WinForms-Benutzersteuerelement identisch, wobei diese in einer CFormView-Ressource gehostet wird. Diese Vorlage veranschaulicht nur den hostenden Code, Die Funktionen Speichern und Öffnen werden nicht implementiert.

    3. Die Dialogs-Vorlage ist eine Ansicht, die ein in den folgenden Szenarios gehostetes WinForms-Benutzersteuerelement veranschaulicht: innerhalb eines modal aufgerufenen CDialog, innerhalb eines ohne Modus aufgerufenen CDialog, als ein modal aufgerufener CWinFormsDialog und als ein ohne Modus aufgerufener CWinFormsDialog. In den CWinFormsDialog-Beispielen wird das Verbinden von MFC-Funktionen mit WinForms-Steuerelementereignissen veranschaulicht. In diesen Beispielen wird außerdem das Konvertieren von Zeichenfolgen von verwaltetem Code zurück zu systemeigenem Code mit den Konvertierungsoperatoren CString und System::String^ veranschaulicht.

Anforderungen

Unterstützte Betriebssysteme: Windows Server 2003, Windows XP

Siehe auch

Referenz

MFC-Windows Forms-Beispiele