Compartilhar via


Como: Criar uma tabela de pesquisa com o componente BindingSource do Windows Forms

Uma tabela de pesquisa é uma tabela de dados que possui uma coluna que exibe dados de registros em uma tabela relacionada. Nos procedimentos a seguir, um ComboBox controle é usado para exibir o campo com o externo-relacionamento dechave do pai para a tabela filho .

Para ajudar a visualizar essas duas tabelas e esse relacionamento, eis um exemplo de uma tabela pai e filho :

CustomersTable (tabela pai)

CustomerID

CustomerName

712

Paul Koch

713

Tamara Johnston

OrdersTable (tabelafilho )

OrderID

OrderDate

CustomerID

903

12 De fevereiro de 2004.

712

904

13 De fevereiro de 2004.

713

Nesse cenário, uma tabela, CustomersTable, armazena as informações reais que você deseja exibir e salvar. Mas, para economizar espaço, a tabela não considera dados adiciona a clareza. Outra tabela, OrdersTable, contém apenas aparência-informações relacionadas sobre o qual o cliente o número de identificação é equivalente à qual data do pedido e a ordem de identificação. Não há menção a nenhum dos clientes. nomes.

Quatro propriedades importantes são definidas no ComboBox Control (Windows Forms) o controle para criar a tabela de pesquisa.

  • O deDataSourcepropriedade contém o nome da tabela.

  • O DisplayMember propriedade contém a coluna de dados da tabela que você deseja exibir o texto do controle (nome do cliente).

  • O ValueMember propriedade contém a coluna de dados dessa tabela com as informações armazenadas (o número de identificação na tabela pai).

  • O SelectedValue propriedade fornece o valor de pesquisa para a tabela filho , com base na ValueMember.

Os procedimentos a seguir mostram como o layout do formulário como uma tabela de pesquisa e vincular dados os controles. Para concluir os procedimentos, você deve ter uma fonte de dados com tabelas pai e filho que têm um estrangeiro-relacionamento dechave , como mencionado anteriormente.

Para criar a interface do usuário

  1. Do caixa de ferramentas, arraste um ComboBox controle para o formulário.

    Este controle exibirá a coluna da tabela pai.

  2. Arraste outros controles para exibir os detalhes da tabela filho . O formato dos dados na tabela deve determinar quais controles que você escolher. For more information, see Windows Forms Controls by Function.

  3. Arraste um BindingNavigator o controle para o formulário; Isso permitirá que você navegue os dados na tabela filho .

Para conectar a dados e o bind para controles

  1. Selecione o ComboBox e clique no Tarefa Inteligente glifo para exibir o Tarefa Inteligente caixa de diálogo.

  2. Selecione itens de limite de dados de uso.

  3. Clique na seta ao lado do A fonte de dados-caixa suspensa. Se uma fonte de dados já foi configurado para o projeto ou de um formulário, será exibido; Caso contrário, complete as etapas a seguir (Este exemplo usa as tabelas Customers e Orders do banco de dados Northwind sample e se refere a eles entre parênteses).

    1. Clique em Adicionar fonte de dados do projeto para se conectar a dados e criar uma fonte de dados.

    2. Sobre o Data Source Configuration Wizard página de boas-vindas, clique em próximo.

    3. Select Database on the Choose a Data Source Type page.

    4. Select a data connection from the list of available connections on the Choose Your Data Connection page. If your desired data connection is not available, select New Connection to create a new data connection. For more information, see Adicionar/modificar a caixa de diálogo de conexão (geral).

    5. Clique em Sim, salvar a conexão para salvar a cadeia de conexão no arquivo deconfiguração do aplicativo.

    6. Selecione os objetos de banco de dados para trazer para o seu aplicativo. Nesse caso, selecione uma tabela pai e a tabela filho (por exemplo, clientes e pedidos), com um relacionamento de chave estrangeira .

    7. Substitua o nome do dataset padrão se desejar.

    8. Click Finish.

  4. No de exibição Associado-caixa suspensa, selecione o nome de coluna (por exemplo, ContactName) a ser exibido na caixa de combinação.

  5. No ValorAssociado -caixa suspensa, selecione a coluna (por exemplo, CustomerID) para executar a operação de pesquisa na tabela filho .

  6. No SelecionadoValor -caixa suspensa, navegue até Fontes de dados do projeto e você acabou de criar o dataset que contém as tabelas pai e filho . Selecione a mesma propriedade da tabela filho que é o ValordeAssociado da tabela pai (por exemplo, Orders. CustomerID). O BindingSource , o conjunto de dados e componentes do adaptador de tabela serão criados e adicionados ao formulário.

  7. Vincular a BindingNavigator o controle para o BindingSource da tabela filho (por exemplo, OrdersBindingSource).

  8. Ligar os controles que não sejam o ComboBox e BindingNavigator o controle para os campos de detalhes a partir da tabela filho BindingSource (por exemplo, OrdersBindingSource) que você deseja exibir.

Consulte também

Referência

BindingSource

Conceitos

Controles de vinculação de dados de Visual Studio

Outros recursos

O Componente BindingSource

ComboBox Control (Windows Forms)