Klasa CWinFormsControl
Udostępnia podstawowe funkcje hostowania kontrolki Windows Forms.
Składnia
template<class TManagedControl>
class CWinFormsControl : public CWnd
Parametry
TManagedControl
Kontrolka .NET Framework Windows Forms, która ma być wyświetlana w aplikacji MFC.
Elementy członkowskie
Konstruktory publiczne
Nazwa/nazwisko | opis |
---|---|
CWinFormsControl::CWinFormsControl | Tworzy obiekt otoki formantów MFC Windows Forms. |
Metody publiczne
Nazwa/nazwisko | opis |
---|---|
CWinFormsControl::CreateManagedControl | Tworzy kontrolkę Formularze systemu Windows w kontenerze MFC. |
CWinFormsControl::GetControl | Pobiera wskaźnik do kontrolki Windows Forms. |
CWinFormsControl::GetControlHandle | Pobiera uchwyt do kontrolki Formularze systemu Windows. |
Operatory publiczne
Nazwa/nazwisko | opis |
---|---|
CWinFormsControl::operator -> |
Zamienia CWinFormsControl::GetControl w wyrażeniach. |
CWinFormsControl::operator TManagedControl^ | Rzutuje typ jako wskaźnik do kontrolki Windows Forms. |
Uwagi
Klasa CWinFormsControl
udostępnia podstawowe funkcje hostowania kontrolki Windows Forms.
Aby uzyskać więcej informacji na temat korzystania z formularzy systemu Windows, zobacz Using a Windows Form User Control in MFC (Używanie kontrolki użytkownika formularza systemu Windows w MFC).
Kod MFC nie powinien buforować dojść okien (zwykle przechowywanych w programie m_hWnd
). Niektóre właściwości kontrolki Formularze systemu Windows wymagają zniszczenia i ponownego utworzenia bazowego win32 Window
przy użyciu funkcji DestroyWindow
i CreateWindow
. Implementacja formularzy Destroy
systemu Windows MFC obsługuje zdarzenia i Create
kontrolek w celu zaktualizowania elementu m_hWnd
członkowskiego.
Uwaga
Integracja aplikacji MFC Windows Forms działa tylko w projektach, które łączą się dynamicznie z MFC (w którym zdefiniowano bibliotekę AFXDLL).
Wymagania
Nagłówek: afxwinforms.h
CWinFormsControl::CreateManagedControl
Tworzy kontrolkę Formularze systemu Windows w kontenerze MFC.
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);
Parametry
typ pType
Typ danych kontrolki do utworzenia. Musi być typem danych typu .
dwStyle
Styl okna, który ma być stosowany do kontrolki. Określ kombinację stylów okna. Obecnie obsługiwane są tylko następujące style: WS_TABSTOP, WS_VISIBLE, WS_DISABLED i WS_GROUP.
Rect
Struktura RECT, która definiuje współrzędne lewego górnego i prawego dolnego rogu kontrolki (tylko pierwsze przeciążenie).
nPlaceHolderID
Uchwyt statycznego formantu uchwytu zastępczego umieszczony w Edytorze zasobów. Nowo utworzona kontrolka Formularze systemu Windows zastępuje kontrolkę statyczną, przy założeniu, że jej pozycja, kolejność z i style (tylko drugie przeciążenie).
pParentWnd
Wskaźnik do okna nadrzędnego.
Nid
Numer identyfikatora zasobu, który ma zostać przypisany do nowo utworzonej kontrolki.
pControl
Wystąpienie kontrolki Windows Forms do skojarzenia z obiektem CWinFormsControl (tylko czwarte przeciążenie).
Wartość zwracana
Jeśli operacja powiedzie się, zwraca wartość niezerową. Jeśli nie powiedzie się, zwraca zero.
Uwagi
Ta metoda tworzy wystąpienie kontrolki .NET Framework Windows Forms w kontenerze MFC.
Pierwsze przeciążenie metody akceptuje typ danych .NET Framework pType , dzięki czemu MFC może utworzyć wystąpienie nowego obiektu tego typu. Typ pType musi być typem danych typu .
Drugie przeciążenie metody tworzy kontrolkę Windows Forms na TManagedControl
podstawie parametru szablonu CWinFormsControl
klasy. Rozmiar i położenie kontrolki są oparte na RECT
strukturze przekazanej do metody. Tylko dwStyle ma znaczenie dla stylów.
Trzecie przeciążenie metody tworzy kontrolkę Windows Forms, która zastępuje statyczną kontrolkę, niszcząc ją i przyjmując jej położenie, kolejność z i style. Kontrolka statyczna służy tylko jako symbol zastępczy dla kontrolki Windows Forms. Podczas tworzenia kontrolki to przeciążenie łączy style z dwStyle ze stylami zasobów statycznej kontrolki.
Czwarte przeciążenie metody umożliwia przekazanie już utworzonego wystąpienia kontrolki Windows Forms pControl , która zostanie opakowana przez MFC. Musi mieć taki sam typ jak TManagedControl
parametr szablonu CWinFormsControl
klasy.
Zobacz Using a Windows Form User Control in MFC (Używanie kontrolki użytkownika formularza systemu Windows w MFC ), aby zapoznać się z przykładami dotyczącymi używania kontrolek Formularz systemu Windows.
CWinFormsControl::CWinFormsControl
Tworzy obiekt otoki formantów MFC Windows Forms.
CWinFormsControl();
Uwagi
Kontrolka Windows Forms jest tworzona podczas wywoływania kontrolek CWinFormsControl::CreateManagedControl.
CWinFormsControl::GetControl
Pobiera wskaźnik do kontrolki Windows Forms.
inline TManagedControl^ GetControl() const;
Wartość zwracana
Zwraca wskaźnik do kontrolki Formularze systemu Windows.
Przykład
Zobacz CWinFormsControl::CreateManagedControl.
CWinFormsControl::GetControlHandle
Pobiera uchwyt do kontrolki Formularze systemu Windows.
inline HWND GetControlHandle() const;
Wartość zwracana
Zwraca uchwyt do kontrolki Formularze systemu Windows.
Uwagi
GetControlHandle
to metoda pomocnika, która zwraca uchwyt okna przechowywany we właściwościach kontrolki programu .NET Framework. Wartość dojścia okna jest kopiowana do CWnd::m_hWnd podczas wywołania metody CWnd::Attach.
CWinFormsControl::operator ->
Zamienia CWinFormsControl::GetControl w wyrażeniach.
inline TManagedControl^ operator->() const;
Uwagi
Ten operator zapewnia wygodną składnię, która zastępuje GetControl
w wyrażeniach.
Aby uzyskać więcej informacji na temat formularzy systemu Windows, zobacz Using a Windows Form User Control in MFC (Używanie kontrolki użytkownika formularza systemu Windows w MFC).
CWinFormsControl::operator TManagedControl^
Rzutuje typ jako wskaźnik do kontrolki Windows Forms.
inline operator TManagedControl^() const;
Uwagi
Ten operator przekazuje CWinFormsControl<TManagedControl>
do funkcji, które akceptują wskaźnik do kontrolki Windows Forms.