Partilhar via


Como chamar propriedades e métodos do controle dos Windows Forms

Como CWinFormsView::GetControl retorna um ponteiro para Control, e não um ponteiro para WindowsControlLibrary1::UserControl1, é aconselhável adicionar um membro do tipo de controle de usuário e para inicializá-lo em IView::OnInitialUpdate. Agora você pode chamar métodos e propriedades usando m_ViewControl.

Este tópico pressupõe que você completou anteriormente Como criar o controle de usuário e hospedá-lo em uma caixa de diálogo e Como criar o controle de usuário e hospedar uma exibição MDI.

Para criar o aplicativo de host do MFC

  1. Abra o aplicativo do MFC que você criou no Como criar o controle de usuário e hospedar uma exibição MDI.

  2. Adicione a seguinte linha na seção pública das substituições de declaração de classe de CMFC02View em MFC02View.h.

    gcroot<WindowsFormsControlLibrary1::UserControl1 ^> m_ViewControl;

  3. Adicionar uma substituição para OnInitialupdate.

    Exibir a janela de Propriedades (F4). Em Modo de Exibição de Classe (CTRL+SHIFT+C), selecione a classe de CMFC02View. Na janela de Propriedades , selecione o ícone para substituições. Role para baixo na lista OnInitialUpdate. Clique na lista suspensa e selecione <adicionar>. Em MFC02View.cpp verifique se o corpo da função de OnInitialUpdate é a seguinte:

    CWinFormsView::OnInitialUpdate();
    m_ViewControl = safe_cast<WindowsFormsControlLibrary1::UserControl1 ^>(this->GetControl());
    m_ViewControl->textBox1->Text = gcnew System::String("hi");
    
  4. Criar e executar o projeto.

    No menu Compilar, clique em Compilar Solução.

    No menu Depurar, clique em Iniciar sem depuração.

    Observe que a caixa de texto é inicializada agora.

Consulte também

Outros recursos

Hospedando um controle de usuário dos Windows Forms como uma exibição MFC