.Net developer

Repeater dentro de repeater

<div id="grupo">

<asp:SqlDataSource ID="dtsGrupo" ConnectionString="<% $
ConnectionStrings:SQL %>" DataSourceMode="DataReader"
SelectCommandType="StoredProcedure"
SelectCommand="selectGrupo" runat="server"></asp:SqlDataSource>

<asp:Repeater ID="rptGrupo" DataSourceID="dtsGrupo"
runat="server" OnItemDataBound="rptGrupo_ItemDataBound">
<ItemTemplate>
<h3>
&nbsp;<%# Eval("Nome") %>
</h3>

<ul>
<li class="foruns">Fóruns</li>
<li class="topicos">Tópicos</li>
<li class="topicos">Respostas</li>
<li class="post">Último Post</li>
</ul>

<div id="foruns">

<asp:SqlDataSource ID="dtsForuns"
ConnectionString="<% $ ConnectionStrings:SQL %>"
DataSourceMode="DataReader"
SelectCommandType="StoredProcedure"
SelectCommand="selectForuns" runat="server">
<SelectParameters>
<asp:Parameter Name="GpId"
DefaultValue="" Type="int32" />
</SelectParameters>
</asp:SqlDataSource>

<asp:Repeater ID="rptForuns"
DataSourceID="dtsForuns" runat="server">
<ItemTemplate>

<img src="image/icone.jpg" alt="<%#
Eval("Descricao") %>" />
<ul>

<li class="tituloforum">
<h4><a href="forum.aspx?id=<%#
Eval("Id") %>" title="<%# Eval("Descricao") %>"><%# Eval("Nome")
%></a></h4>
<p><a href="forum.aspx?id=<%#
Eval("Id") %>"><%# Eval("Descricao") %></a></p>
</li>
<li class="topicos">
<p class="numerosforum">05</p>
</li>
<li class="topicos">
<p class="numerosforum">05</p>
</li>
<li class="post">
<p class="postli">24/04/2007, 10:25</p>
</li>
</ul>
</ItemTemplate>
</asp:Repeater>
</div>
</ItemTemplate>
</asp:Repeater>
</div>

using System.Data.Common;

protected void rptGrupo_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if ((e.Item.ItemType == ListItemType.Item) ||
(e.Item.ItemType == ListItemType.AlternatingItem))
{
DbDataRecord dbr = (DbDataRecord)e.Item.DataItem;
SqlDataSource dts = new SqlDataSource();

dts = ((SqlDataSource)e.Item.FindControl("dtsForuns"));
dts.SelectParameters[0].DefaultValue =
DataBinder.Eval(dbr, "Id").ToString();
}
}

0 comentários: