Il Repeater è uno dei più semplici (e tra i più utili) server control del framework ASP.NET Web Forms. Il funzionamento del controllo è già scritto nel nome: permette di visualizzare dati ripetitivi (eg. elenchi, liste etc.) applicando a tutti i record (o item) lo stesso aspetto.
In questo articolo esaminiamo i concetti alla base di questo controllo, mettendo le basi per la costruzione di un esempio pratico: la lettura e la visualizzazione del feed RSS di Edit, che vedremo in un articolo successivo.
Le sorgenti di dati, infatti, si collegano al controllo con il classico meccanismo di binding e possono essere tabelle di un nostro DB, liste in memoria o, come nel nostro caso, dei file XML.
Stabilire il template per l'elenco
Il Repeater ci permette sia di impostare e replicare l'aspetto di ogni singolo item, sia di impostare gli elementi a contorno del nostro elenco, grazie a 5 template:
Template | Descrizione |
---|---|
HeaderTemplate | L'intestazione dell'elenco, qui possiamo inserire un titolo, aprire un elenco puntato (<ul> ) o una lista (<dl> ), etc. |
FooterTemplate | Ci permette di impostare l'aspetto alla fine dell'elenco e chiudere eventuali liste |
ItemTemplate | Contiene il markup che serve a rappresentare il singolo item |
AlternatingItemTemplate | Possiamo impostare una visualizzazione diversa tra righe pari e dispari dell'elenco |
SeperatorTemplate | Ci permette di inserire degli elementi di separazione tra gli item |
Ecco come può apparire il nostro feed una volta impostati gli stili per ciascun template:
Ecco come appare il markup del controllo Repeater:
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="FeedEdit" >
<HeaderTemplate><!-- codice dell'header --></HeaderTemplate>
<ItemTemplate><!-- codice dell'singolo item --></ItemTemplate>
<AlternatingItemTemplate><!-- codice del'item 'dispari' --></AlternatingItemTemplate>
<SeparatorTemplate><!-- codice per separare le entries --></SeparatorTemplate>
<FooterTemplate><!-- codice di chiusura --></FooterTemplate>
</asp:Repeater>
Nel prossimo articolo osserveremo più da vicino il poco codice necessario a gestire il nostro RSS. Per il momento notiamo che abbiamo indicato la fonte di dati al nostro controllo con l'attributo DataSourceID
.