Condividi tramite


Procedura dettagliata: hosting di controlli Windows Form in Windows Presentation Foundation tramite XAML

Aggiornamento: novembre 2007

In WPF sono disponibili molti controlli con numerose funzionalità. È tuttavia possibile utilizzare i controlli Windows Form nelle pagine WPF. È ad esempio possibile che si sia investito in modo considerevole nei controlli Windows Form o che si disponga di un controllo Windows Form con funzionalità uniche.

In questa procedura dettagliata viene illustrato come ospitare un controllo System.Windows.Forms.MaskedTextBox Windows Form in una pagina WPF utilizzando XAML.

Per un elenco di codice completo delle attività illustrate in questa procedura dettagliata, vedere Esempio di hosting di controlli Windows Form in Windows Presentation Foundation tramite XAML.

Nota   È possibile che le finestre di dialogo e i comandi di menu visualizzati siano diversi da quelli descritti nella Guida, a seconda delle impostazioni attive o dell'edizione del programma. Per modificare le impostazioni, scegliere Importa/esporta impostazioni dal menu Strumenti. Per ulteriori informazioni, vedere Impostazioni di Visual Studio.

Prerequisiti

Per completare questa procedura dettagliata, è necessario disporre dei seguenti componenti:

  • Visual Studio 2008.

Hosting di un controllo Windows Form

Per ospitare il controllo MaskedTextBox

  1. Creare un progetto di applicazione WPF denominato HostingWfInWpf.

  2. In Esplora soluzioni, aggiungere un riferimento all'assembly WindowsFormsIntegration, denominato WindowsFormsIntegration.dll.

  3. In Esplora soluzioni, aggiungere un riferimento all'assembly Windows Form, denominato System.Windows.Forms.dll.

  4. Aprire Window1.xaml in WPF Designer.

  5. Sostituire il codice in Window1.xaml con quello incluso nell'esempio riportato di seguito.

    Il mapping dello spazio dei nomi wf stabilisce un riferimento alla DLL che contiene il controllo Windows Form. Il controllo MaskedTextBox viene creato come elemento figlio del controllo WindowsFormsHost.

    <Window x:Class="Window1"
        xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:wf="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"  
        Title="HostingWfInWpf"
        >
    
      <Grid>
    
        <WindowsFormsHost>
          <wf:MaskedTextBox x:Name="mtbDate" Mask="00/00/0000"/>
        </WindowsFormsHost>
    
      </Grid>
    
    
    </Window>
    
    <Window x:Class="HostingWfInWpf.Window1"
        xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:wf="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"  
        Title="HostingWfInWpf"
        >
    
        <Grid>
    
            <WindowsFormsHost>
                <wf:MaskedTextBox x:Name="mtbDate" Mask="00/00/0000"/>
            </WindowsFormsHost>
    
        </Grid>
    
    
    </Window>
    

Vedere anche

Attività

Procedura dettagliata: hosting di controlli Windows Form in Windows Presentation Foundation

Esempio di hosting di controlli Windows Form in Windows Presentation Foundation tramite XAML

Concetti

Procedura dettagliata: hosting di controlli Windows Form compositi in Windows Presentation Foundation

Procedura dettagliata: hosting di controlli di Windows Presentation Foundation in Windows Form

Controlli Windows Form e controlli WPF equivalenti

Riferimenti

ElementHost

WindowsFormsHost

Altre risorse

Progettazione WPF

Procedure relative a migrazione e interoperabilità