Como: Vincular o controle DataGrid do Windows Forms a uma fonte de dados
Observação |
---|
O DataGridView controle substitui e adiciona funcionalidade para o DataGrid controle; No entanto, o DataGrid controle é mantido para compatibilidade com versões anteriores e o uso futuro, se você escolher. Para obter mais informações, consulte Diferenças entre o DataGridView do Windows Forms e controles DataGrid. |
O Windows Forms DataGrid controle foi especificamente projetado para exibir informações de uma fonte de dados. Vincular o controle em tempo de execução, chamando o SetDataBinding método. Embora você possa exibir dados de uma variedade de fontes de dados, as origens mais comuns são modos de exibição de dados e conjuntos de dados.
Para vincular dados do controle DataGrid programaticamente
Escreva código para preencher o dataset.
Se a fonte de dados for um dataset ou uma exibição de dados com base em uma tabela dataset, adicione código para o formulário para preencher o dataset.
O código exato que você usa depende de onde o dataset está recebendo dados. Se o dataset está sendo preenchido diretamente a partir de um banco de dados, você normalmente chama o Fill o método de um adaptador de dados, como no exemplo a seguir, que preenche um dataset chamado DsCategories1:
sqlDataAdapter1.Fill(DsCategories1)
sqlDataAdapter1.Fill(DsCategories1);
sqlDataAdapter1->Fill(dsCategories1);
Se o dataset está sendo preenchido a partir de um XML Web service, você normalmente cria uma instância do serviço no seu código e chamar um de seus métodos para retornar um dataset. Em seguida, você pode mesclar o conjunto de dados do XML Web service em seu dataset local. O exemplo a seguir mostra como você pode criar uma instância de um XML Web service chamado CategoriesService, ligue para seu GetCategories método e a mesclagem, chamado de conjunto de dados resultante em um dataset local DsCategories1:
Dim ws As New MyProject.localhost.CategoriesService() ws.Credentials = System.Net.CredentialCache.DefaultCredentials DsCategories1.Merge(ws.GetCategories())
MyProject.localhost.CategoriesService ws = new MyProject.localhost.CategoriesService(); ws.Credentials = System.Net.CredentialCache.DefaultCredentials; DsCategories1.Merge(ws.GetCategories());
MyProject::localhost::CategoriesService^ ws = new MyProject::localhost::CategoriesService(); ws->Credentials = System::Net::CredentialCache::DefaultCredentials; dsCategories1->Merge(ws->GetCategories());
Chamar o DataGrid do controle SetDataBinding método, passando-a fonte de dados e um membro de dados. Se você não precisar passar explicitamente um membro de dados, passe uma seqüência vazia.
Observação Se você estiver vinculando a grade pela primeira vez, você pode definir o controle DataSource e DataMember Propriedades. No entanto, você não pode redefinir essas propriedades depois que elas foram definidas. Portanto, é recomendável que você sempre use o SetDataBinding método.
O exemplo a seguir mostra como você pode vincular a tabela de clientes em um dataset chamado programaticamente DsCustomers1:
DataGrid1.SetDataBinding(DsCustomers1, "Customers")
DataGrid1.SetDataBinding(DsCustomers1, "Customers");
dataGrid1->SetDataBinding(dsCustomers1, "Customers");
Se a tabela Customers é a única tabela no dataset, você pode também vincular a grade dessa forma:
DataGrid1.SetDataBinding(DsCustomers1, "")
DataGrid1.SetDataBinding(DsCustomers1, "");
dataGrid1->SetDataBinding(dsCustomers1, "");
(Opcional) Adicione os estilos de tabela apropriada e coluna na grade. Se não houver nenhum estilo de tabela, você verá a tabela, mas com formatação mínima e com todas as colunas visíveis.
Consulte também
Tarefas
Como: Adicionar tabelas e colunas para o controle DataGrid do Windows Forms
Referência
Visão geral do controle DataGrid (Windows Forms)