Questo che segue è un controllo che ho creato per fare la lista di marche e modelli per il catalogo del sito
www.dm-racing.itCome puoi vedere sono 2 semplici elenchi puntati annidati: prima metto in un <li> una marca di moto, poi utilizzo un ciclo foreach per inserire dentro tutti i modelli, il tutto modellato su storedProcedure, dataAccessLayer, businessLogicLayer, ...
Il fatto di rendere visibile o meno i modelli all'interno della marca lo controllo tramite CSS che puoi sempre guardare salvandoti una pagina qualsiasi del sito.
Ignora la parte in headerTemplate e footerTemplate: a me è servito per creare il box che contiene l'elenco... sono tutti quei div per creare i bordi arrotondati.
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="ModelsList.ascx.cs" Inherits="JackNova.WebSite.UI.Controls.ModelsList" %>
<asp:Repeater ID="rptAllUpDepartments" runat="server" DataSourceID="objAllUpDepartments" >
<HeaderTemplate>
<!--titolo del box in topright-->
<div class="dt box_top_left">
<div class="dr">
<div class="dc box_top_right h_text"><img src="images/spacer.gif" alt="" height="1" width="15">Menu:</div>
</div>
</div>
<!--contenuto del box in bottomright -->
<div class="dt box_bottom_left">
<div class="dr">
<div class="dc box_bottom_right">
</HeaderTemplate>
<ItemTemplate>
<li class="drop">
<a href="#">
<asp:Label ID="reparto" runat="server" Text='<% #Eval("Title") %>'></asp:Label>
<!--<asp:Image ID="Image1" runat=server ImageUrl='<% #Eval("ImageURL") %>' />-->
<!--[if IE 7]><!--></a><!--<![endif]--><table><tbody><tr><td>
<ul>
<asp:Repeater ID="rptDepartementsByUpDepartment"
EnableViewState=false runat="server"
DataSource='<%#GetDepartmentsByUpDepartmentID((int)(Eval("ID"))) %>'>
<ItemTemplate>
<li>
<asp:HyperLink ID="HyperLink1" runat=server Text='<% #Eval("Title") %>' NavigateUrl='<%# "../BrowseCatalog.aspx?Dep="+Eval("ID") %>' /><br />
</li>
</ItemTemplate>
<FooterTemplate>
</ul>
</td></tr></tbody></table><!--[if lte IE 6]></a><![endif]-->
</li>
</FooterTemplate>
</asp:Repeater>
</ItemTemplate>
<FooterTemplate>
</div>
</div>
</div>
<br style="line-height: 4px;">
</FooterTemplate>
</asp:Repeater>
<asp:ObjectDataSource ID="objAllUpDepartments" runat="server" SelectMethod="GetUpDepartments"
TypeName="JackNova.WebSite.BLL.Store.UpDepartment"></asp:ObjectDataSource>