Passo a passo: Criando um controle de usuário do Windows Forms que suporta a vinculação de dados simples
Ao exibir dados em formulários em aplicativos Windows, você pode escolher os controles existentes do Toolbox, ou você pode criar controles personalizados se seu aplicativo requer funcionalidade que não estão disponíveis nos controles padrão.Essa explicação passo a passo mostra como criar um controle que implementa o DefaultBindingPropertyAttribute.Controles que implementam DefaultBindingPropertyAttribute podem conter uma propriedade que pode estar associada a dados.Tais controles são semelhantes a um TextBox ou CheckBox.
Para obter mais informações sobre criação de controle, consulte Desenvolvendo controles do Windows Forms em tempo de Design.
Ao criar controles para uso em cenários de associação de dados, você precisa implementar um dos seguintes atributos de associação de dados:
Uso do atributo DataBinding |
---|
Implemente o DefaultBindingPropertyAttribute em controles simples, como um TextBox, que exibe uma única coluna (ou propriedade) de dados.(Esse processo é descrito nesta página de explicação passo a passo.) |
Implemente o ComplexBindingPropertiesAttribute em controles, como um DataGridView, que exibe listas (ou tabelas) de dados.Para mais informações, consulte Passo a passo: Criando um controle de usuário do Windows Forms que suporta a vinculação de dados complexos. |
Implemente o LookupBindingPropertiesAttribute em controles, como um ComboBox, que exibe listas (ou tabelas) de dados mas também precisa apresentar uma única coluna ou propriedade.Para mais informações, consulte Passo a passo: Criando um controle de usuário do Windows Forms que suporta pesquisa de ligação de dados. |
Esta explicação passo a passo cria um controle simples que exibe dados de uma única coluna em uma tabela.Este exemplo usa a coluna Phone da tabela Customers do banco de dados de exemplo Northwind.O controle de usuário simples exibirá números de telefone de clientes em um formato padrão de número de telefone usando um MaskedTextBox e definindo a máscara para um número de telefone.
Durante este explicação passo a passo, você aprenderá como:
Criar um novo Windows Application.
Adicionar um novo User Control para o projeto.
Criar visualmente o controle de usuário.
Implementar o atributo DefaultBindingProperty.
Criar um conjunto de dados com o Data Source Configuration Wizard.
Definir a coluna Phone na janela Data Sources para usar o novo controle.
Criar um formulário para exibir dados no novo controle.
Pré-requisitos
A fim de concluir este explicação passo a passo, será necessário:
- Acesso ao banco de dados de exemplo Northwind.Para mais informações, consulte Como: instalar bancos de dados de amostra.
Criando um Aplicativo Windows
A primeira etapa é criar um Windows Application.
Para criar o novo projeto Windows
No Visual Studio, a partir do menu File, crie um novo Project.
Nome do projeto SimpleControlWalkthrough.
Selecione Windows Application e clique em OK.Para mais informações, consulte Desenvolvendo aplicativos clientes.
O projeto SimpleControlWalkthrough é criado e adicionado ao Solution Explorer.
Adicionar um controle de usuário ao projeto
Esta explicação passo a passo cria um simples controle de dados-ligáveis de um User Control para adicionar um item User Control ao projeto SimpleControlWalkthrough.
Para adicionar um controle de usuário ao projeto
No menu Project, escolha Add User Control.
Digite PhoneNumberBox na área Nome e clique em Add.
O controle PhoneNumberBox é adicionado ao Solution Explorer e abre no designer.
Criando o Controle PhoneNumberBox
Essa explicação passo a passo expande sobre o MaskedTextBox existente para criar o controle PhoneNumberBox.
Para criar o controle PhoneNumberBox
Arraste um MaskedTextBox a partir da Toolbox para a superfície de design do controle de usuário.
Selecione a marca inteligente no MaskedTextBox que você acabou de arrastar e escolha Set Mask.
Selecione Phone number na caixa de diálogo Input Mask e clique em OK para definir a máscara.
Adicionando o atributo de associação de dados requerido
Para controles simples que oferecem suporte a vinculação de dados, implemente o DefaultBindingPropertyAttribute.
Para implementar o atributo DefaultBindingProperty
Alterne o controle PhoneNumberBox para modo de exibição do código.(No menu View, escolha Code).
Substitua o código no PhoneNumberBox pelo seguinte:
<System.ComponentModel.DefaultBindingProperty("PhoneNumber")> Public Class PhoneNumberBox Public Property PhoneNumber() As String Get Return MaskedTextBox1.Text End Get Set(ByVal value As String) MaskedTextBox1.Text = value End Set End Property End Class
using System.Windows.Forms; namespace CS { [System.ComponentModel.DefaultBindingProperty("PhoneNumber")] public partial class PhoneNumberBox : UserControl { public string PhoneNumber { get{ return maskedTextBox1.Text; } set{ maskedTextBox1.Text = value; } } public PhoneNumberBox() { InitializeComponent(); } } }
No menu Build, escolha Build Solution.
Crie uma fonte de dados no seu banco de dados
Esse passo usa o Data Source Configuration Wizard para criar uma fonte de dados com base na tabela Customers no banco de dados de exemplo Northwind.Você deve ter acesso ao banco de dados de exemplos Northwind para criar a conexão.Para obter informações sobre como configurar o banco de dados de exemplo Northwind, consulte Como: instalar bancos de dados de amostra.
Para criar o DataSet
No menu Data, clique em Show Data Sources.
Na janela Data Sources, selecione Add New Data Source para iniciar o Data Source Configuration Wizard.
Selecione Database na página Choose a Data Source Type, e clique Next.
Na página Choose your Data Connection siga um destes procedimentos:
Se uma conexão de dados para o banco de dados de exemplo Northwind estiver disponível na lista drop-down, selecione-o.
Ou
Selecione New Connection para iniciar a caixa Add/Modify Connection.Para mais informações, consulte Adicionar/modificar a caixa de diálogo de conexão (geral).
Se seu banco de dados exigir uma senha, selecione a opção para incluir dados confidenciais, e clique Next.
Clique em Next na página Save connection string to the Application Configuration file.
Expanda o nó Tables na página Choose your Database Objects.
Selecione a tabela Customers, e clique em Finish.
O NorthwindDataSet é adicionado ao seu projeto e a tabela Customers aparece na janela Data Sources.
Definindo a Coluna de Telefone Para usar o Controle PhoneNumberBox
Dentro da janela Data Sources você pode definir o controle a ser criado, antes de arrastar itens para seu formulário.
Para definir a coluna telefone para associar ao controle PhoneNumberBox
Abra o Form1 no designer.
Expanda o nó Customers na janela Data Sources.
Clique na seta suspensa no nó Customers e escolha Details a partir da lista controle.
Clique na seta suspensa na coluna Phone e escolha Customize.
Selecione o PhoneNumberBox da lista de Associated Controls na caixa de diálogo Data UI Customization Options.
Clique na seta suspensa na coluna Phone e escolha PhoneNumberBox.
Adicionar os controles ao formulário
Você pode criar os controles associados a dados arrastando itens da janela Data Sources até o formulário.
Para criar controles associados a dados no formulário
Arraste o nó Customers principal da janela Data Sources para o formulário e verifique que o controle PhoneNumberBox é usado para exibir os dados na coluna Phone.
Controles associados a dados com rótulos descritivos aparecem no formulário, juntamente com uma faixa de ferramenta (BindingNavigator) para navegação em registros.Um NorthwindDataSet,CustomersTableAdapter, BindingSource e BindingNavigator aparecem na bandeja de componentes.
Executando o aplicativo
Para executar o aplicativo
- Pressione F5 para executar o aplicativo.
Próximas etapas
Dependendo dos seus requisitos de aplicativo, há várias etapas que você pode desejar executar depois de criar um controle que oferece suporte a associação de dados.Algumas próximas etapas típicas incluem:
Colocar os controles personalizados em uma biblioteca de controle para você possa reutilizá-los em outros aplicativos.
Criar controles que suportam o mais complexo cenários de associação de dados.Para obter mais informações, consulte Passo a passo: Criando um controle de usuário do Windows Forms que suporta a vinculação de dados complexos e Passo a passo: Criando um controle de usuário do Windows Forms que suporta pesquisa de ligação de dados.
Consulte também
Tarefas
Como: definir o controle a ser criado ao arrastar da janela Data Sources
Conceitos
Vinculando controles do Windows Forms a dados em Visual Studio
Preparando seu aplicativo para receber dados
Buscando dados em seu aplicativo.
Controles de vinculação de dados de Visual Studio
Edição de dados em seu aplicativo.