Usuário com melhor resposta
Controle Repeater não funciona

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>
</td>
</tr>
</tbody>
</table>
</div>
</form>
</body>
</html>Missão Crítica
Respostas
-
Pessoal já resolvi, o componente está sem o objeto datasource.
Obrigado
Missão Crítica
- Sugerido como Resposta Janderson Candido de Mattos quarta-feira, 12 de setembro de 2012 14:26
- Marcado como Resposta Harley Araujo segunda-feira, 17 de setembro de 2012 10:59
Todas as Respostas
-
Pessoal já resolvi, o componente está sem o objeto datasource.
Obrigado
Missão Crítica
- Sugerido como Resposta Janderson Candido de Mattos quarta-feira, 12 de setembro de 2012 14:26
- Marcado como Resposta Harley Araujo segunda-feira, 17 de setembro de 2012 10:59
-
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