Demonstra Passo a passo: Hospedagem de um controle de usuário do Windows Forms usando o designer do WPF
Esta explicação passo a passo mostra como usar o Windows Presentation Foundation (WPF) Designer for Visual Studio para hospedar um controle composto do Windows Forms em um aplicativo do WPF. Para obter mais informações sobre interoperabilidade do Windows Forms e WPF, consulte Migração e Interoperabilidade.
Tarefas explicadas essa explicação passo a passo incluem:
Criando o projeto
Criando o controle composto Formulários do Windows
Hospedando controle Formulários do Windows em um aplicativo WPF.
Observação: |
---|
As caixas de diálogo e comandos de menu demonstradas podem ser diferentes daqueles descritas na Ajuda, dependendo das configurações ativas ou configurações de ediçã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.
Criando o projeto
A primeira etapa é criar um projeto para o aplicativo host.
Para criar o projeto
Crie um novo aplicativo WPF projeto chamado "DemoApplication".Para obter mais informações, consulte Como: Criar um novo projeto de aplicativo do WPF.
Window1.xaml é aberto no WPF Designer.
No Solution Explorer, adicione uma referência ao conjunto de módulos (assembly) WindowsFormsIntegration, que é chamado WindowsFormsIntegration.dll.
In O gerenciador de soluções, adicione uma referência ao assembly de Windows Forms, chamado sistema.Windows.Forms.dll.
Criando o controle composto Formulários do Windows
Este procedimento mostra como criar um controle composto que tamanhos próprio ao seu conteúdo.O TableLayoutPanel controle e a propriedade AutoSize oferecem capacidade layout dinâmico do controle.Para obter mais informações, consulte Controlar de TableLayoutPanel (Windows Forms).
Criando o controle composto Formulários do Windows
Adicione um novo projeto Biblioteca de controle Formulários do Windows chamado "DemoControlLibrary" à solução.Para obter mais informações, consulte Como: Adicionar e remover itens de solução.
Abra UserControl1 no Windows Forms Designer.
Da Caixa de Ferramentas ,clique duas vezes no TableLayoutPanel controle.Um TableLayoutPanel controle aparece na superfície de design.
Selecione Remover Última linha de tarefas TableLayoutPanel Menu marca inteligente.
Na janela Propriedades,defina o valor da propriedade Dock como Fill.
Da Caixa de Ferramentas ,adicionar um controle Label a primeira célula do TableLayoutPanel controle.
Na janela Properties,defina as seguintes propriedades para o controle Label.
Propriedade
Valor
AutoSize
True
Dock
Preenchimento
Margin
0,0,0,0
Texto
Inserir data:
AlinhamentoDoTexto
MiddleCenter
Da Caixa de Ferramentas ,adicionar um controle MaskedTextBox a primeira célula do TableLayoutPanel controle.
Clique no glifo marca inteligente () no MaskedTextBox controle e selecione Definir Máscara de tarefas MaskedTextBox Menu.
A máscara de entrada caixa de diálogo aparece.
De máscara descrição coluna, selecione Data curta e clique no botão OK.
Na parte superior do Propriedades janela, selecionar o TableLayoutPanel controle da lista drop-down.
Defina o valor da property AutoSize como true.
Na parte superior da janela de Properties,selecione UserControl1 .
Defina o valor da AutoSize propriedade para true, e defina o valor da Size propriedade para 0,0.
UserControl1 é redimensionada para acomodar seu conteúdo.
No menu Build,selecione Build Solution para criar a solução.
Que hospedam o controle Formulários do Windows no WPF
Você usa o WindowsFormsHost elemento de host UserControl1 em um aplicativo do WPF.
Que hospedam o controle Formulários do Windows no WPF
Em Gerenciador de Soluções , no projeto DebuggingExample, adicione uma referência ao projeto DemoControlLibrary.Para obter mais informações, consulte Como: Adicionar ou remover referências no Visual Studio (Visual Basic).
Abra Window1.xaml no WPF Designer.
No modo XAML, importar o namespace DemoControlLibrary, inserindo o mapeamento de namespace a seguir em Window Abrir marca.Para obter mais informações, consulte Como: Importar um Namespace em XAML.
xmlns:dc="clr-namespace:DemoControlLibrary;assembly=DemoControlLibrary"
Insira o seguinte XAML após a Grid marca de abertura.
<WindowsFormsHost HorizontalAlignment="Left" VerticalAlignment="Top"> <dc:UserControl1/> </WindowsFormsHost>
Uma região que representa o controle hospedado Formulários do Windows aparece no designer.
Próximas etapas
Você também pode host WPF controles em Formulários do Windows.Para obter mais informações, consulte Usando Controles Windows Presentation Foundation.