Freigeben über


CWinFormsControl-Klasse

Stellt die grundlegende Funktionalität zum Hosten eines Windows Forms-Steuerelements bereit.

Syntax

template<class TManagedControl>
class CWinFormsControl : public CWnd

Parameter

TManagedControl
Ein .NET Framework-Windows Forms-Steuerelement, das in der MFC-Anwendung angezeigt werden soll.

Member

Öffentliche Konstruktoren

Name Beschreibung
CWinFormsControl::CWinFormsControl Erstellt ein MFC Windows Forms-Steuerelementwrapperobjekt.

Öffentliche Methoden

Name Beschreibung
CWinFormsControl::CreateManagedControl Erstellt ein Windows Forms-Steuerelement in einem MFC-Container.
CWinFormsControl::GetControl Ruft einen Zeiger auf das Windows Forms-Steuerelement ab.
CWinFormsControl::GetControlHandle Ruft ein Handle für das Windows Forms-Steuerelement ab.

Öffentliche Operatoren

Name Beschreibung
CWinFormsControl::operator -> Ersetzt CWinFormsControl::GetControl in Ausdrücken.
CWinFormsControl::operator TManagedControl^ Wandelt einen Typ als Zeiger auf ein Windows Forms-Steuerelement um.

Hinweise

Die CWinFormsControl Klasse stellt die grundlegenden Funktionen zum Hosten eines Windows Forms-Steuerelements bereit.

Weitere Informationen zur Verwendung von Windows Forms finden Sie unter Verwenden eines Windows Form-Benutzersteuerelements in MFC.

Ihr MFC-Code sollte keine Fensterhandles zwischenspeichern (in der Regel gespeichert m_hWnd). Einige Windows Forms-Steuerelementeigenschaften erfordern, dass die zugrunde liegende Win32 Window zerstört und mithilfe DestroyWindow und CreateWindowneu erstellt wird. Die MFC Windows Forms-Implementierung behandelt die Destroy Und-Ereignisse Create der Steuerelemente, um das m_hWnd Element zu aktualisieren.

Hinweis

Die MFC Windows Forms-Integration funktioniert nur in Projekten, die dynamisch mit MFC (in denen AFXDLL definiert ist) verknüpfen.

Anforderungen

Kopfzeile: afxwinforms.h

CWinFormsControl::CreateManagedControl

Erstellt ein Windows Forms-Steuerelement in einem MFC-Container.

inline BOOL CreateManagedControl(
    System::Type^ pType,
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    int nID)
inline BOOL CreateManagedControl(
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    int nID);

inline BOOL CreateManagedControl(
    DWORD dwStyle,
    int nPlaceHolderID,
    CWnd* pParentWnd);

inline BOOL CreateManagedControl(
    typename TManagedControl^ pControl,
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    int nID);

Parameter

pType
Der Datentyp des zu erstellenden Steuerelements. Muss ein Typ-Datentyp sein.

dwStyle
Das Fensterformat, das auf das Steuerelement angewendet werden soll. Geben Sie eine Kombination aus Fensterformatvorlagen an. Derzeit werden nur die folgenden Formatvorlagen unterstützt: WS_TABSTOP, WS_VISIBLE, WS_DISABLED und WS_GROUP.

rect
Eine RECT-Struktur , die die Koordinaten der oberen linken und unteren rechten Ecke des Steuerelements definiert (nur erste Überladung).

nPlaceHolderID
Das Handle des statischen Platzhaltersteuerelements, das im Ressourcen-Editor platziert wird. Das neu erstellte Windows Forms-Steuerelement ersetzt das statische Steuerelement, wobei seine Position, Z-Reihenfolge und Formatvorlagen (nur zweite Überladung) vorausgesetzt werden.

pParentWnd
Ein Zeiger auf das übergeordnete Fenster.

Nid
Die Ressourcen-ID-Nummer, die dem neu erstellten Steuerelement zugewiesen werden soll.

pControl
Eine Instanz eines Windows Forms-Steuerelements, das dem CWinFormsControl-Objekt zugeordnet werden soll (nur vierte Überladung).

Rückgabewert

Wenn dies erfolgreich ist, wird ein Wert ungleich Null zurückgegeben. Wenn dies nicht erfolgreich ist, wird null zurückgegeben.

Hinweise

Diese Methode instanziiert ein .NET Framework-Windows Forms-Steuerelement in einem MFC-Container.

Die erste Überladung der Methode akzeptiert einen .NET Framework-Datentyp pType , sodass MFC ein neues Objekt dieses Typs instanziieren kann. pType muss ein Typ-Datentyp sein.

Die zweite Überladung der Methode erstellt ein Windows Forms-Steuerelement basierend auf dem TManagedControl Vorlagenparameter der CWinFormsControl Klasse. Die Größe und Position des Steuerelements basiert auf der RECT Struktur, die an die Methode übergeben wird. Nur dwStyle ist für die Formatvorlagen wichtig.

Die dritte Überladung der Methode erstellt ein Windows Forms-Steuerelement, das ein statisches Steuerelement ersetzt, es zerstört und seine Position, Z-Reihenfolge und Formatvorlagen übernimmt. Das statische Steuerelement dient nur als Platzhalter für das Windows Forms-Steuerelement. Beim Erstellen des Steuerelements kombiniert diese Überladung die Stile von dwStyle mit den Ressourcenstilen des statischen Steuerelements.

Mit der vierten Überladung der Methode können Sie ein bereits instanziiertes Windows Forms-Steuerelement pControl übergeben, das MFC umschließt. Er muss vom gleichen Typ wie der TManagedControl Vorlagenparameter der CWinFormsControl Klasse sein.

Beispiele zur Verwendung von Windows Form-Steuerelementen finden Sie unter Verwenden eines Windows Form-Benutzersteuerelements in MFC .

CWinFormsControl::CWinFormsControl

Erstellt ein MFC Windows Forms-Steuerelementwrapperobjekt.

CWinFormsControl();

Hinweise

Das Windows Forms-Steuerelement wird instanziiert, wenn Sie CWinFormsControl::CreateManagedControl aufrufen.

CWinFormsControl::GetControl

Ruft einen Zeiger auf das Windows Forms-Steuerelement ab.

inline TManagedControl^ GetControl() const;

Rückgabewert

Gibt einen Zeiger auf das Windows Forms-Steuerelement zurück.

Beispiel

Siehe CWinFormsControl::CreateManagedControl.

CWinFormsControl::GetControlHandle

Ruft ein Handle für das Windows Forms-Steuerelement ab.

inline HWND GetControlHandle() const;

Rückgabewert

Gibt ein Handle für das Windows Forms-Steuerelement zurück.

Hinweise

GetControlHandle ist eine Hilfsmethode, die das in den .NET Framework-Steuerelementeigenschaften gespeicherte Fensterhandle zurückgibt. Der Fensterhandlewert wird während des Aufrufs von CWnd::m_hWnd in CWnd::Attach kopiert.

CWinFormsControl::operator ->

Ersetzt CWinFormsControl::GetControl in Ausdrücken.

inline TManagedControl^  operator->() const;

Hinweise

Dieser Operator bietet eine bequeme Syntax, die in Ausdrücken GetControl ersetzt wird.

Weitere Informationen zu Windows Forms finden Sie unter Verwenden eines Windows Form-Benutzersteuerelements in MFC.

CWinFormsControl::operator TManagedControl^

Wandelt einen Typ als Zeiger auf ein Windows Forms-Steuerelement um.

inline operator TManagedControl^() const;

Hinweise

Dieser Operator wird an Funktionen übergeben CWinFormsControl<TManagedControl> , die einen Zeiger auf ein Windows Forms-Steuerelement akzeptieren.

Siehe auch

CWinFormsDialog-Klasse
CWinFormsView-Klasse