Compartilhar via


Demonstra 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 o DefaultBindingPropertyAttribute podem conter uma propriedade que pode ser vinculada 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 Windows Forms em tempo de Design.

Ao criar controles para uso em cenários de vinculação de dados, você precisa implementar um dos seguintes atributos de vinculaçã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 obter mais informações, consulte Demonstra 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 obter mais informações, consulte Demonstra Passo a passo: Criando um controle de usuário do Windows Forms a ligação de dados que suporta pesquisa.

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 Assistente de Configuração de Fonte de Dados.

  • 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 obter mais informações, consulte Criando Aplicativos Baseados no Windows.

    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 vinculaçã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:

    • 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 obter mais informações, consulte Adicionar/modificar a caixa de diálogo de conexão (geral).

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

  6. Clique 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 vincular 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 com dados vinculados, arrastando itens da janela Data Sources para o formulário.

Para criar controles vinculado 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 vinculados 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 vinculaçã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

Vinculação de controles do Windows Forms a dados em Visual Studio

Controles de vinculação de dados de Visual Studio

Outros recursos

Visão geral dos aplicativos de dados em Visual Studio

Conectando-se a Dados no Visual Studio

Preparando seu aplicativo para receber dados

Buscando dados em seu aplicativo

Editar dados no seu aplicativo

Validando Dados

Salvando dados