Compartilhar via


Como: Vincular o controle DataGrid do Windows Forms a uma fonte de dados

ObservaçãoObservaçã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

  1. 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());
    
  2. 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çãoObservaçã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, "");
    
  3. (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)

Outros recursos

Controle DataGrid (Windows Forms)

Ligação de dados de formulários do Windows