Procedura: chiamare proprietà e metodi del controllo Windows Form

Aggiornamento: novembre 2007

CWinFormsView::GetControl restituisce un puntatore a System.Windows.Forms.Control e non a WindowsControlLibrary1::UserControl1. È pertanto consigliabile aggiungere un membro del tipo di controllo utente e inizializzarlo in IView::OnInitialUpdate. Sarà quindi possibile chiamare metodi e proprietà utilizzando m_ViewControl.

Per creare l'applicazione host MFC

  1. Aprire l'applicazione MFC creata in Procedura: creare il controllo utente e inserirlo in una finestra di dialogo.

  2. Aggiungere la seguente riga alla sezione di override pubblica della dichiarazione di classe CMFC02View in MFC02View.h:

    gcroot<WindowsControlLibrary1::UserControl1 ^> m_ViewControl;

  3. Aggiungere un override di OnInitialupdate.

    Visualizzare la finestra Proprietà (F4). In Visualizzazione classi (CTRL+MAIUSC+C), selezionare la classe CMFC02View. Nella finestra Proprietà selezionare l'icona per Override. Scorrere verso il basso l'elenco fino a OnInitialUpdate. Fare clic sull'elenco a discesa e selezionare <Aggiungi>. In MFC02View.cpp. verificare che il corpo della funzione OnInitialUpdate è il seguente:

    CWinFormsView::OnInitialUpdate();
    m_ViewControl = safe_cast<WindowsControlLibrary1::UserControl1 ^>(this->GetControl());
    m_ViewControl->textBox1->Text = gcnew System::String("hi");
    
  4. Generare ed eseguire il progetto.

    Dal menu Genera, fare clic su Genera soluzione.

    Scegliere Avvia senza eseguire debug dal menu Debug.

    La casella di testo risulta ora inizializzata.

Vedere anche

Altre risorse

Hosting di un controllo utente Windows Form come visualizzazione MFC