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
Abra o aplicativo do MFC que você criou no Como criar o controle de usuário e hospedar uma exibição MDI.
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;
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");
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