Condividi tramite


Esempio WinFormIntegration: in questo esempio viene illustrato l'hosting di un controllo utente Windows Forms in un'applicazione MFC.

Aggiornamento: novembre 2007

In questo esempio viene illustrato l'hosting di un controllo utente Windows Forms come finestra di dialogo o visualizzazione in un'applicazione MFC.

L'esempio include tre DLL di estensione MFC, due controlli utente Windows Forms e un'applicazione principale MDI MFC:

EXTDLL1 utilizza CWinFormsView per l'hosting del controllo utente WinFormUserControlView1 come finestra CView all'interno dell'applicazione MDI MFC. Utilizza inoltre il routing di comandi per inviare i messaggi al controllo utente Windows Forms.

EXTDLL2 mostra l'hosting di un controllo utente Windows Forms come controllo statico all'interno di una finestra CView esistente.

EXTDLL3 incapsula le diverse modalità di hosting di un controllo utente Windows Forms in una finestra di dialogo MFC, compreso l'uso di CDialog e di CWinFormsDialog.

WinFormUserControl1 controllo utente Windows Forms semplice con l'aggiunta di alcuni controlli comuni.

WinFormUserControlView1 controllo utente Windows Forms che implementa le interfacce Microsoft::VisualC::MFC::IView e Microsoft::VisualC::MFC::ICommandTarget per partecipare al routing di comandi MFC e alle notifiche di vista. Si tratta di un editor di testo di base (con uso di un controllo TextBox .NET a più righe) che utilizza MFC per salvare e aprire i file.

MFC04 si tratta dell'applicazione MDI MFC principale che carica le DLL di estensione di MFC, aggiungendole come modelli doc MFC diversi.

Per ottenere gli esempi e le istruzioni per l'installazione:

  • In Visual Studio scegliere Esempi dal menu ?.

    Per ulteriori informazioni, vedere Individuazione dei file di esempio.

  • La versione più recente e l'elenco completo degli esempi sono disponibili in linea alla pagina Visual Studio 2008 Samples.

  • È anche possibile trovare gli esempi sul disco rigido del computer. Per impostazione predefinita, gli esempi e il file Leggimi vengono copiati in una cartella nel percorso \Programmi\Visual Studio 9.0\Samples\. Per le versioni Express di Visual Studio, tutti gli esempi sono disponibili in linea.

Per generare ed eseguire l'esempio:

  1. Per generare i progetti, aprire MFC04.sln e scegliere Genera soluzione dal menu Genera.

  2. Per eseguire i diversi scenari e avviare l'applicazione, scegliere Nuovo dal menu File. Selezionare il modello CView, CFormView o Dialogs:

    1. Il modello CView consente di aprire una CWinFormsView con una casella di modifica a più righe .NET modificabile. Questo testo può anche essere salvato in un file e ricaricato utilizzando le voci di menu MFC Salva e Apri. È possibile richiamare la funzionalità Salva dall'interno di Windows Forms selezionando il pulsante a discesa Salva modifiche nell'oggetto StatusStrip di Windows Forms. Selezionando la voce di menu MFC CViewCmds->Command1 il testo presente in StatusStrip verrà aggiornato, mostrando il routing dei comandi MFC al controllo utente Windows Forms hosted.

    2. Il modello CFormView è uguale al modello UserControl di Windows Forms descritto prima, ma è contenuto all'interno di una risorsa CFormView. Questo modello illustra solo il codice di hosting; la funzionalità Salva e Apri non è implementata.

    3. Il modello Dialogs è una vista che illustra un controllo utente Windows Forms hosted nei seguenti scenari: all'interno di un oggetto modale chiamato CDialog, all'interno di un oggetto non modale chiamato CDialog, come oggetto modale chiamato CWinFormsDialog, e come oggetto non modale chiamato CWinFormsDialog. L'esempio di CWinFormsDialog illustra l'associazione di funzioni MFC fino agli eventi di controlli Windows Forms. In questi esempi viene anche illustrato come passare le stringhe da elementi gestiti a elementi nativi utilizzando CString con gli operatori di conversione System::String^.

Requisiti

Sistemi operativi supportati: Windows Server 2003, Windows XP

Vedere anche

Riferimenti

Esempi relativi a MFC Windows Form