Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O WPF fornece muitos controles com um conjunto de recursos avançado. No entanto, às vezes, talvez você queira usar controles do Windows Forms em suas páginas do WPF. Por exemplo, você pode ter um investimento substancial em controles existentes do Windows Forms ou pode ter um controle do Windows Forms que fornece funcionalidade exclusiva.
Este passo a passo mostra como hospedar um controle de System.Windows.Forms.MaskedTextBox do Windows Forms em uma página do WPF usando código.
Para obter uma listagem de código completa das tarefas mostradas neste passo a passo, consulte Hospedar um controle de Windows Forms no exemplodo WPF.
Pré-requisitos
Você precisa do Visual Studio para concluir este passo a passo.
Hospedando o controle dos Windows Forms
Para hospedar o controle MaskedTextBox
Criar um projeto de aplicativo WPF chamado
HostingWfInWpf.Adicione referências aos assemblies a seguir.
WindowsFormsIntegration
System.Windows.Forms
Abra MainWindow.xaml no Designer do WPF.
Nomeie o elemento Grid
grid1.<Grid Name="grid1"> </Grid>No modo design ou exibição XAML, selecione o elemento Window.
Na janela Propriedades, clique na guia Eventos.
Clique duas vezes no evento Loaded.
Insira o código a seguir para manipular o evento Loaded.
private void Window_Loaded(object sender, RoutedEventArgs e) { // Create the interop host control. System.Windows.Forms.Integration.WindowsFormsHost host = new System.Windows.Forms.Integration.WindowsFormsHost(); // Create the MaskedTextBox control. MaskedTextBox mtbDate = new MaskedTextBox("00/00/0000"); // Assign the MaskedTextBox control as the host control's child. host.Child = mtbDate; // Add the interop host control to the Grid // control's collection of child controls. this.grid1.Children.Add(host); }Private Sub Window_Loaded(ByVal sender As Object, ByVal e As RoutedEventArgs) ' Create the interop host control. Dim host As New System.Windows.Forms.Integration.WindowsFormsHost() ' Create the MaskedTextBox control. Dim mtbDate As New MaskedTextBox("00/00/0000") ' Assign the MaskedTextBox control as the host control's child. host.Child = mtbDate ' Add the interop host control to the Grid ' control's collection of child controls. Me.grid1.Children.Add(host) End SubNa parte superior do arquivo, adicione a seguinte instrução
Importsouusing.using System.Windows.Forms;Imports System.Windows.FormsPressione F5 para compilar e executar o aplicativo.
Consulte também
- ElementHost
- WindowsFormsHost
- Criar o XAML no Visual Studio
- Passo a Passo: Hospedar um Controle do Windows Forms no WPF Usando XAML
- Passo a Passo: Hospedar um Controle Composto do Windows Forms no WPF
- Passo a Passo: Integrar um Controle Composto de WPF no Windows Forms
- Controles dos Windows Forms e controles WPF equivalentes
- Hospedando um controle do Windows Forms em um exemplo do WPF
.NET Desktop feedback