none
Controle Repeater não funciona RRS feed

  • Pergunta

  • Pessoal sabem se existe algum erro aqui, pois no browser não exibe nada:

    <%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default"%>
    <%@ import Namespace="System.Data" %>
    <%@ import Namespace="System.Data.OleDb" %>

    <script runat="server">
       
        Dim oReader As OleDbDataReader
       
        'define um objeto DataAdapter
        Dim oDadapter As OleDbDataAdapter
       
        'define a string sql para selecionar o nome e a cidade da tabela Clientes ordenados pelo nome
        Dim Sql As String = "SELECT nome, endereco FROM clientes ORDER BY nome"
       
        'Cria a conexao com o banco de dados clientes.mdb e cria o DataAdapter
        Dim oConnection As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\dados\Clientes.mdb")
       
        Sub Page_Load(ByVal Sender As Object, ByVal E As EventArgs)

            oDadapter = New OleDbDataAdapter(Sql, oConnection)
           
            'define o objeto DataSet
            Dim oDataSet As New DataSet()
            'Abre a conexão
            oConnection.Open()
            'Preenche o DataSet
            oDadapter.Fill(oDataSet, "clientes")
           
            'configura a propriedade DataSource do controle Repeater e vincula
            clientes.DataSource = oDataSet.Tables("clientes").DefaultView
            clientes.DataBind()
           
        End Sub
       
    </script>


    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>Untitled Page</title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
              <h1><%response.write("Relação de Clientes")%></h1>
             
              <table cellspacing="0" cellpadding="5" border="0" width="100%">
    <tbody>
    <tr valign="top">
    <td bgcolor="#33cc99">
             
              <asp:Repeater id="clientes" runat="server">
               
                <HeaderTemplate>
                    <table border="1" width="100%">
                    <tr>
                    <td>Nome</td>
                    <td>Endereco</td>
                    </tr>
                </HeaderTemplate>
               
                <ItemTemplate>
    <tr>
    <td><%# DataBinder.Eval(Container.DataItem, "Nome") %></td>
    <td><%# DataBinder.Eval(Container.DataItem, "Endereco") %></td>
    </tr>
    </ItemTemplate>

    <AlternatingItemTemplate>
    <tr>
    <td><%# DataBinder.Eval(Container.DataItem, "Nome") %></td>
    <td><%# DataBinder.Eval(Container.DataItem, "Endereco") %></td>
    </tr>
    </AlternatingItemTemplate>
               
                       
              </asp:Repeater>
        &nbsp;

    </td>
    </tr>
    </tbody>
    </table>
             
               
        </div>
        </form>
    </body>
    </html>


    Missão Crítica

    quarta-feira, 12 de setembro de 2012 14:11

Respostas

Todas as Respostas

  • Pessoal já resolvi, o componente está sem o objeto datasource.

    Obrigado


    Missão Crítica

    quarta-feira, 12 de setembro de 2012 14:22
  • Procure fazer no código em vez de ser na página.

    Objeto.DataSource = seu_datatable;

    Objeto.DataBinder();

    Coisas direto na página é feito demais (opinião pessoal).


    Espero ter ajudado. Se ajudei, favor marcar no fórum falando que foi útil.

    Mauricio Junior - Comunidade www.ecode10.com

    quinta-feira, 13 de setembro de 2012 14:32