Partilhar via


Demonstra Passo a passo: Hospedagem de um controle de formulários do Windows no Windows Presentation Foundation por meio de XAML

O WPF fornece muitos controles com um conjunto rico de características. Entretanto, você às vezes pode quere utilizar controles de Windows Forms nas suas páginas WPF. Por exemplo, voce pode ter um investimento substancial em controles Windows Forms existentes, ou você pode ter um controle Windows Forms que fornece funcionalidade unica.

Esse guia passo a passo mostra como hospedar um controle System.Windows.Forms.MaskedTextBox do Windows Forms em uma página WPF usando XAML.

Para uma listagem de código completa das tarefas apresentadas neste passo a passo, veja Hospedagem de um Controlarar Windows Forms no Windows Presentation Foundation usando o exemplo XAML.

Observação As caixas de diálogo e comandos de menu você vê podem diferir daqueles descritos na ajuda dependendo de suas configurações ativas ou versão. Para alterar as configurações, escolher Importar e exportar configurações on the Ferramentas menu. Para obter mais informações, consulte Configurações do Visual Studio.

Pré-requisitos

Para completar este passo a passo, são necessários os seguintes componentes:

  • Visual Studio 2008.

Hospedando o Controle do Windows Forms

Para inicializar o controle MaskedTextBox

  1. Crie um projeto de aplicação WPF chamado HostingWfInWpf.

  2. No Solution Explorer, acrescente uma referência ao assembly WindowsFormsIntegration, que é chamado WindowsFormsIntegration.dll.

  3. No Solution Explorer, acrescente uma referência ao assembly Windows Forms, que é chamado System.Windows.Forms.dll.

  4. Abra Window1.xaml no WPF Designer.

  5. Substitua o código em Window1.xaml pelo código no exemplo a seguir.

    O mapeamento de espaço de nomes wf estabelece uma referência para a DLL que contém o controle Windows Forms. O controle MaskedTextBox é criado como um filho do controle 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>
    

Consulte também

Tarefas

Demonstra Passo a passo: Hospedagem de um controle de formulários do Windows no Windows Presentation Foundation

Hospedagem de um Controlarar Windows Forms no Windows Presentation Foundation usando o exemplo XAML

Conceitos

Demonstra Passo a passo: Hospedagem de um controle composto do Windows Forms no Windows Presentation Foundation

Demonstra Passo a passo: Hospedagem de um controle Windows Presentation Foundation no Windows Forms

Controles de Formulários do Windows e Controles WPF Equivalentes

Referência

ElementHost

WindowsFormsHost

Outros recursos

WPF Designer

Tópicos de "Como Fazer" migração e interoperabilidade