Passo a passo: Exibindo dados em um controle DataRepeater (Visual Studio)

Esta explicação passo a passo fornece um cenário básico de início-a-término para a exibição de dados vinculados em um DataRepeater controle.

Pré-requisito

Esta explicação passo a passo requer um banco de dados de exemplo Northwind.

Se você não tiver esse banco de dados no computador de desenvolvimento, você pode baixá-lo da Centro de Download da Microsoft.Para obter instruções, consulte Downloading Sample Databases (LINQ to SQL).

Visão Geral

A primeira parte desta explicação passo a passo consiste em quatro tarefas principais:

  • Criando uma solução.

  • Adicionando um DataRepeater controle.

  • Adicionando uma fonte de dados.

  • Adicionando controles ligados a dados.

ObservaçãoObservação

Seu computador pode mostrar nomes ou locais diferentes para alguns dos elementos da interface do usuário do Visual Studio nas instruções a seguir. A edição do Visual Studio que você possui e as configurações que você usa determinam esses elementos. Para obter mais informações, consulte Configurações de Visual Studio.

Criação de uma solução DataRepeater

Na primeira etapa, você pode criar um projeto e solução.

Para criar uma solução DataRepeater

  1. Sobre o Visual Studio arquivo menu, clique em Novo projeto.

  2. No tipos de projeto painel na Novo projeto caixa de diálogo caixa, expanda Visual Basice, em seguida, clique em Windows.

  3. Clique em Windows Application no painel Templates.

  4. No nome , digite DataRepeaterApp.

  5. Clique em OK.

    O Windows Forms Designer abre.

  6. Selecione o formulário no Windows Forms Designer.No Propriedades janela, defina a tamanho propriedade para 800, 700.

Adicionando um controle DataRepeater

Nesta etapa, você adiciona um DataRepeater o controle ao formulário.

Para adicionar um controle DataRepeater

  1. No menu Exibir, clique em Caixa de Ferramentas.

    A Toolbox abre.

  2. Selecione o Visual Basic PowerPacks guia.

  3. Arraste um DataRepeater controlar até Form1.

  4. Na janela Properties, defina a local propriedade para 0, 25.

  5. Definir o tamanho propriedade para 460, 600.

Adicionando uma fonte de dados

Nesta etapa, você pode adicionar uma fonte de dados para o DataRepeater controle.

Para adicionar uma fonte de dados

  1. No menu Data, clique em Show Data Sources.

  2. Na janela Data Sources, clique em Add New Data Source.

  3. Selecione Database na página Choose a Data Source Type, e clique Next.

  4. Sobre o Choose Your Data Connection de página, execute uma das seguintes etapas:

    • Se uma conexão de dados para o banco de dados de exemplo Northwind estiver disponível na lista drop-down, selecione-o.

      - ou -

    • Clique em Nova conexão para configurar uma nova conexão de dados.Para obter mais informações, consulte How to: Create Connections to SQL Server Databases.

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

    ObservaçãoObservação

    Se for exibida uma caixa de diálogo, clique em Sim para salvar o arquivo ao seu projeto.

  6. Clique em próximo sobre o Salvar a seqüência de conexão no arquivo de configuração de aplicativo página.

  7. Expanda o nó Tables na página Choose your Database Objects.

  8. Marque as caixas de seleção ao lado do os clientes e pedidos tabelas e, em seguida, clique Concluir.

    NorthwindDataSet é adicionado ao seu projeto e o os clientes e pedidos tabelas aparecem na Fontes de dados janela.

Adicionando controles ligados a dados

Nesta etapa, você pode adicionar controles ligados a dados para o DataRepeater.

Para adicionar controles ligados a dados

  1. No Fontes de dados janela, selecione o nó de nível superior para o os clientes tabela.

  2. Altere o tipo subjacente da tabela para detalhes , clicando em detalhes na lista drop-down no nó da tabela.

  3. Selecione o os clientes nó da tabela e arraste-o para a região de modelo de item (a região superior) da DataRepeater controle.

    A BindingNavigator controle é adicionado ao formulário e o NorthwindDataSet, CustomersBindingSource, CustomersTableAdapter, TableAdapterManager, e CustomersBindingNavigator componentes são adicionados à bandeja de componentes.

  4. Selecione todos os campos e seus rótulos associados e posicioná-los próximo à borda esquerda da região de modelo de item.

  5. Selecione os últimos cinco campos (região, CEP, país, telefônico, e Fax) e seus rótulos associados e movê-los para cima e à direita dos seis primeiros campos.

  6. Selecione o modelo de item (a região superior do controle).

  7. Na janela Properties, defina a tamanho propriedade para 427, 170.

Neste ponto, você tem um aplicativo de trabalho que irá exibir uma lista de repetição de clientes.Você pode pressionar F5 para executá-lo, alterar os dados e adicionar ou excluir registros de clientes.

As próximas etapas opcionais, você aprenderá como personalizar o DataRepeater controle.

Próximas etapas (opcionais)

Nesta parte da explicação passo a passo consiste em quatro tarefas opcionais:

  • Alterar a aparência da DataRepeater controle.

  • Impedindo que os usuários adicionem ou exclusão de registros.

  • Adicionando recursos de pesquisa para o DataRepeater controle.

  • Adicionando uma tabela mestre e detalhadas para a DataRepeater controle.

Alterar a aparência do controle DataRepeater

Nesta etapa opcional, você altera o BackColor da DataRepeater o controle em tempo de design.Você também adicionar código para exibir linhas alternando as cores e para alterar um rótulo ForeColor condicionalmente.

Para alterar a aparência do controle

  1. No Windows Forms Designer, selecione a região (inferior) principal da DataRepeater controle.

  2. Na janela Properties, defina a BackColor propriedade em branco.

  3. Clique duas vezes o DataRepeater para abrir o Editor de código.

  4. No Editor de código, além de eventos na lista suspensa, clique em DrawItem.

  5. No DrawItem o manipulador de eventos, adicione o seguinte código para alternativo a BackColor:

    ' Alternate the back color.
    If (e.DataRepeaterItem.ItemIndex Mod 2) <> 0 Then
        ' Apply the secondary back color.
        e.DataRepeaterItem.BackColor = Color.AliceBlue
    Else
        ' Apply the default back color.
        e.DataRepeaterItem.BackColor = DataRepeater1.BackColor
    End If
    
    // Alternate the back color.
    if ((e.DataRepeaterItem.ItemIndex % 2) != 0)
    // Apply the secondary back color.
    {
        e.DataRepeaterItem.BackColor = Color.AliceBlue;
    }
    else
    {
        // Apply the default back color.
        e.DataRepeaterItem.BackColor = dataRepeater1.BackColor;
    }
    
  6. No DrawItem o manipulador de eventos, adicione o seguinte código para alterar o ForeColor de um rótulo de acordo com uma condição:

    If e.DataRepeaterItem.Controls(RegionTextBox.Name).Text = "" Then
        e.DataRepeaterItem.Controls("RegionLabel").
         ForeColor = Color.Red
    Else
        e.DataRepeaterItem.Controls("RegionLabel").
         ForeColor = Color.Black
    End If
    
    if (e.DataRepeaterItem.Controls[regionTextBox.Name].Text == "")
    {
        e.DataRepeaterItem.Controls["regionLabel"].ForeColor = Color.Red;
    }
    else
    {
        e.DataRepeaterItem.Controls["regionLabel"].ForeColor = Color.Black;
    }
    
  7. Pressione F5 para executar o aplicativo e ver as personalizações.

Impedindo que os usuários adicionem ou excluam registros

Nesta etapa opcional, você pode adicionar código que impede que os usuários adicionem ou excluam registros na DataRepeater controle.

Para impedir que usuários adicionar e excluir registros

  1. No Windows Forms Designer, clique duas vezes no formulário para abrir o Editor de código.

  2. Adicione o seguinte código para o Form_Load evento:

    DataRepeater1.AllowUserToAddItems = False
    DataRepeater1.AllowUserToDeleteItems = False
    BindingNavigatorAddNewItem.Enabled = False
    CustomersBindingSource.AllowNew = False
    BindingNavigatorDeleteItem.Enabled = False
    
    dataRepeater1.AllowUserToAddItems = false;
    dataRepeater1.AllowUserToDeleteItems = false;
    bindingNavigatorAddNewItem.Enabled = false;
    customersBindingSource.AllowNew = false;
    bindingNavigatorDeleteItem.Enabled = false;
    
  3. Na lista suspensa Class Name, clique em BindingNavigatorDeleteItem.Na lista suspensa Method Name, clique em EnabledChanged.

  4. Adicione o seguinte código para o manipulador de eventos BindingNavigatorDeleteItem_EnabledChanged:

    If BindingNavigatorDeleteItem.Enabled = True Then
        BindingNavigatorDeleteItem.Enabled = False
    End If
    
    if (bindingNavigatorDeleteItem.Enabled == true)
    {
        bindingNavigatorDeleteItem.Enabled = false;
    }
    
    ObservaçãoObservação

    Essa etapa é necessária porque a BindingSource permitirá que o DeleteItem botão toda vez que o registro atual é alterado.

  5. Pressione F5 para executar o aplicativo.Observe que o DeleteItem botão está desativado e você não pode excluir itens pressionando a tecla DELETE.

Adição da funcionalidade de pesquisa ao controle DataRepeater

Nesta etapa opcional, você pode implementar o recurso de pesquisar um valor na DataRepeater controle.Se a seqüência de pesquisa for encontrada, o controle seleciona o item que contém o valor e o item é movido para a exibição.

Para adicionar o recurso de pesquisa

  1. Arrastar um TextBox controlar a partir de Toolbox para o formulário que contém o DataRepeater controle.

    Posicione-o sob o DataRepeater controle.

  2. Na janela Properties, altere o nome propriedade para SearchTextBox.

  3. Arrastar um Button controlar a partir de Toolbox para o formulário que contém o DataRepeater controle.Posicione-o sob o DataRepeater controle.

  4. Na janela Properties, altere o nome propriedade para SearchButton.Alterar o texto propriedade para pesquisa.

  5. Clique duas vezes o Button o controle para abrir o Editor de código e, em seguida, adicione o seguinte código para o SearchButton_Click manipulador de eventos.

    Dim foundIndex As Integer
    Dim searchString As String
    searchString = SearchTextBox.Text
    ' Search for the string in the CustomerID field.
    foundIndex = CustomersBindingSource.Find("CustomerID",
     searchString)
    If foundIndex > -1 Then
        DataRepeater1.CurrentItemIndex = foundIndex
    Else
        MsgBox("Item " & searchString & " not found.")
    End If
    
    int foundIndex;
    string searchString;
    searchString = searchTextBox.Text;
    // Search for the string in the CustomerID field.
    foundIndex = customersBindingSource.Find("CustomerID", searchString);
    if (foundIndex > -1)
    {
        dataRepeater1.CurrentItemIndex = foundIndex;
    }
    else
    {
        MessageBox.Show("Item " + searchString + " not found.");
    }
    
  6. Pressione F5 para executar o aplicativo.Digite uma ID de cliente em SearchTextBox e clique no pesquisa botão.

Adicionando um mestre e a tabela de detalhe à DataRepeater

Nesta etapa opcional, você pode adicionar um segundo DataRepeater o controle para exibir os pedidos relacionados para cada cliente.

Para adicionar uma tabela mestre e detalhadas

  1. Arraste um segundo DataRepeater controlar da Visual Basic PowerPacks guia o caixa de ferramentas para o formulário.

  2. Na janela Properties, defina a local propriedade para 465, 25.

  3. Definir o tamanho propriedade para 315, 600.

  4. No Fontes de dados janela, expanda o os clientes nó da tabela e selecione o nó de detalhe para o pedidos tabela.

  5. Altere o tipo subjacente esse pedidos tabela detalhes clicando em detalhes na lista drop-down no nó da tabela.

  6. Arraste esta pedidos o nó de tabela para a área de modelo de item (a região superior) da segunda DataRepeater controle.

    Um OrdersBindingSource componente e um OrdersTableAdapter componentes são adicionados à bandeja de componentes.

  7. Pressione F5 para executar o aplicativo.Quando você seleciona cada cliente no primeiro DataRepeater controlar as ordens para que o cliente são exibidos na segunda DataRepeater controle.

Consulte também

Tarefas

Como: exibição vinculado a dados em um controle DataRepeater (Visual Studio)

Como: exibir não acoplados a controles em um controle DataRepeater (Visual Studio)

Como: alterar o Layout de um controle DataRepeater (Visual Studio)

Como: exibir cabeçalhos de Item em um controle DataRepeater (Visual Studio)

Como: pesquisar dados em um controle DataRepeater (Visual Studio)

Como: criar um formulário mestre/detalhe, usando dois controles de DataRepeater (Visual Studio)

Como: alterar a aparência de um controle DataRepeater (Visual Studio)

Como: desativar a adicionar e excluir itens de DataRepeater (Visual Studio)

Solucionando problemas de controle DataRepeater (Visual Studio)

Conceitos

Introdução ao controle DataRepeater (Visual Studio)