Partilhar via


Como: BIND a dados em um controle Templated no Visual Studio

Você pode associar um controle, como o controle GridView, DetailsView, FormView, ListView, DataList, ou Repeater com um controle da fonte de dados, como o controle LinqDataSource, ObjectDataSource, ou SqlDataSource.Você também pode usar os modelos para o controle (os controle ListView, DataList, Repeater, e FormView requerem os modelos) para personalizar a apresentação de dados com sua interface do usuário personalizada no designer.

Este tópico explica o processo de adicionar controles da interface do usuário, como um controle TextBox, a um modelo, e em seguida, ligando o controle à dados específicos.

Para vincular um modelo de controle a uma fonte de dados

  1. Estabeleça uma fonte de dados válida, como o controle SqlDataSource, na sua página e atente para o valor da propriedade ID.

    Por exemplo:

    <asp:SqlDataSource ID="SqlDataSource1" Runat="server" 
      SelectCommand="SELECT CustomerID, CompanyName FROM Customers"
      ConnectionString="<%$ 
        ConnectionStrings:NorthwindConnectionString %>">
    </asp:SqlDataSource>
    

    Para obter mais informações sobre como usar um controle SqlDataSource com o banco de dados, consulte Visão geral sobre o controle de servidor Web SqlDataSource.

  2. A partir do grupo Dados na caixa de ferramentas, arraste um controle DataList para a página.

    O menu de atalho DataList Tasks aparece.

    • Se o menu de atalho DataList Tasks não aparecer, clique com o botão direito do mouse no controle DataList e clique em Mostrar Marca Inteligente.
  3. Na lista Escolher a fonte de dados, clique no controle SqlDataSource que você criou na etapa 1.

    Quando a página é processada, o controle exibe todas as colunas e os dados da consulta sem personalização.Dependendo de seus dados, o controle DataList será exibido com os campos vinculados padrão, conforme mostrado no exemplo de código a seguir:

    <asp:DataList ID="DataList1"  
        DataKeyField="CustomerID" 
        DataSourceID="SqlDataSource1">
      <ItemTemplate>
        CustomerID:
        <asp:Label ID="CustomerIDLabel"  
            Text='<%# Eval("CustomerID") %>'>
        </asp:Label><br />
        CompanyName:
        <asp:Label ID="CompanyNameLabel"  
            Text='<%# Eval("CompanyName") %>'>
        </asp:Label><br />
        <br />
      </ItemTemplate>
    </asp:DataList>
    

Para editar os modelos para o controle

  1. No modo de exibição Design, clique com o botão direito do mouse no controle DataList e então clique em Mostrar Marca Inteligente.

  2. No menu DataList Tasks, clique em Edit Templates.

    Agora você pode editar os modelos no designer.Você pode arrastar outros controles para o modelo a ser vinculado posteriormente.

  3. Na lista Display, clique em AlternatingItemTemplate (diferentes controles suportam diferentes modelos).

  4. o espaço de design AlternatingItemTemplate, digite CustomerID: e depois, a partir do grupo Padrão na caixa de ferramentas, arraste um controle T:System.Web.UI.WebControls.Label para o controle DataList.

  5. No menu Label Tasks, clique em Edit Data Bindings.

  6. No caixa de diálogo de LabelName DataBindings , em Propriedades vinculáveis, clique em Texto.

  7. Em Binding for Text, na lista Bound to, clique em CustomerID.

  8. Repita as etapas 4 a 7 para CompanyName.

  9. No espaço de design AlternatingItemTemplate, selecione todo o conteúdo, e em seguida, pressione CTRL+B para alterar o texto para negrito.

  10. Clique com o botão direito do mouse no controle DataList e, em seguida, clique em Mostrar Marca Inteligente.

  11. Clique em End Template Editing para sair modo de edição de modelo.

    Quando a página é exibida no navegador, a lista de empresas é exibida alternando entre texto sem-formatação e texto em negrito.

Consulte também

Tarefas

Explicação passo a passo: Acesso básico a dados em páginas da Web

Conceitos

Visão geral sobre controles fonte de dados

Visão geral sobre o controle de servidor Web SqlDataSource