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
Do caixa de ferramentas, arraste um ComboBox controle para o formulário.
Este controle exibirá a coluna da tabela pai.
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.
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
Selecione o ComboBox e clique no Tarefa Inteligente glifo para exibir o Tarefa Inteligente caixa de diálogo.
Selecione itens de limite de dados de uso.
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).
Clique em Adicionar fonte de dados do projeto para se conectar a dados e criar uma fonte de dados.
Sobre o Data Source Configuration Wizard página de boas-vindas, clique em próximo.
Select Database on the Choose a Data Source Type page.
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).
Clique em Sim, salvar a conexão para salvar a cadeia de conexão no arquivo deconfiguração do aplicativo.
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 .
Substitua o nome do dataset padrão se desejar.
Click Finish.
No de exibição Associado-caixa suspensa, selecione o nome de coluna (por exemplo, ContactName) a ser exibido na caixa de combinação.
No ValorAssociado -caixa suspensa, selecione a coluna (por exemplo, CustomerID) para executar a operação de pesquisa na tabela filho .
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.
Vincular a BindingNavigator o controle para o BindingSource da tabela filho (por exemplo, OrdersBindingSource).
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
Conceitos
Controles de vinculação de dados de Visual Studio