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:

Criando um Aplicativo Windows

A primeira etapa é criar um Windows Application.

Para criar o novo projeto Windows

  1. No Visual Studio, a partir do menu File, crie um novo Project.

  2. Nome do projeto SimpleControlWalkthrough.

  3. 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

  1. No menu Project, escolha Add User Control.

  2. 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

  1. Arraste um MaskedTextBox a partir da Toolbox para a superfície de design do controle de usuário.

  2. Selecione a marca inteligente no MaskedTextBox que você acabou de arrastar e escolha Set Mask.

  3. 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

  1. Alterne o controle PhoneNumberBox para modo de exibição do código.(No menu View, escolha Code).

  2. 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();
            }
        }
    }
    
  3. 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

  1. No menu Data, clique em Show Data Sources.

  2. Na janela Data Sources, selecione Add New Data Source para iniciar o Data Source Configuration Wizard.

  3. Selecione Database na página Choose a Data Source Type, e clique Next.

  4. Na página Choose your Data Connection siga um destes procedimentos:

  5. Se seu banco de dados exigir uma senha, selecione a opção para incluir dados confidenciais, e clique Next.

  6. Clique em Next na página Save connection string to the Application Configuration file.

  7. Expanda o nó Tables na página Choose your Database Objects.

  8. 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

  1. Abra o Form1 no designer.

  2. Expanda o nó Customers na janela Data Sources.

  3. Clique na seta suspensa no nó Customers e escolha Details a partir da lista controle.

  4. Clique na seta suspensa na coluna Phone e escolha Customize.

  5. Selecione o PhoneNumberBox da lista de Associated Controls na caixa de diálogo Data UI Customization Options.

  6. 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:

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.

Validação de dados

Salvar dados

Outros recursos

Visão geral dos aplicativos de dados em Visual Studio

Connecting to Data in Visual Studio