<er:itemlist />

Brukes for å liste ut elementer med en egen listerendering som brukes per element. Elementene

Example:
<er:itemlist TemplateId="1" CategoryId="2" runat="server" RenderingName="ListElement.Article.SmallImage.ascx"></er:itemlist>

Available parameters:
    ▪    RenderingName
    ▪    TemplateId
    ▪    CategoryId
    ▪    OrderBy
    ▪    ItemsPerPage
    ▪    StartPage
    ▪    SearchString
    ▪    Where
    ▪    ParentItemId
    ▪    MenuItemId
    ▪    TextIfEmpty
    ▪    CustomProperties
    ▪    ExcludePrevious
    ▪    Skip

    ▪    RenderingNameField
    ▪    TemplateIdField
    ▪    CategoryIdField
    ▪    OrderByField
    ▪    ItemsPerPageField
    ▪    WhereField
    ▪    ParentItemIdField
    ▪    MenuItemIdField
    ▪    TextIfEmptyField
    ▪    SearchStringField

Vær oppmerksom på at runat="server" alltid må være med. De feltene som slutter med "Field" angir at verdien skal hentes fra en angitt felt, og ikke er angitt direkte i renderingen. Dersom både feltet med og uten "Field" angis, brukes feltet uten "Field" som backup dersom det andre ikke har verdi.

Alle parametrene kan også settes via kode. Da må en i tillegg angi en ID til itemlisten. Dette kan for Example brukes dersom en skal angi en verdi som delvis hentes fra databasen og resten er en fast streng, slik som "columns=4" der tallet 4 hentes fra databasen.

RenderingName
Filnavnet på renderingen som skal repeteres. Dette er en ascx-fil som ligger i renderings-mappen, og kan for Example være listelement-article.ascx. Dersom en ikke angir noe her, brukes renderingen som er angitt på elementet eller feltsettet til elementet.

TemplateId
Ett eller flere kommaseparte tall som angir hvilke(n) feltsett som skal vises.

CategoryId
Ett eller flere kommaseparte tall som angir hvilke(n) kategorier som skal vises.

OrderBy
Hvilke tabellfelt listen skal sorteres etter. Angis som SQL, slik som "PublishDate DESC, Title"

ItemsPerPage
Antall artikler som skal vises per side. Dersom det ikke er angitt at det skal vises som sider, vises bare dette antallet.

StartPage
Dersom en ønsker at listen skal deles opp over flere sider, angir en tallet 1 her.

SearchString
Angi et ord eller blank for å aktivere søkefunksjonen på listen.

Where
Her kan du legge til noen egne begrensninger på listen. Skrives som SQL, og alle feltene i tabellen item er tilgjengelige.

Skip
Angi antall elementer som skal hoppes over før det listes ut.

ParentItemId
Dersom en angir en ID her, vil kun elementer som har denne ID i ParentItemId-feltet vises. Det mest brukte scenarioet her er at en angir ParentItemIdField="ItemId", som brukes i sidebyggeren

MenuItemId
Dersom en angir -1 her, vises kun elementer som ligger under CurrentItem i menyen. Dersom en angir et annet tall, vises elementer som ligger under dette menyelementet.

TextIfEmpty
Dersom en ønsker å vise en tekst ved tom liste.

ExcludePrevious
Angi "true" her, dersom elementer som er vist tidligere på siden ikke skal vises her.

CustomProperties
Her kan du angi en eller flere navn med verdi som sendes videre til hvert enkelt element i listen. For Example innholdet her kan for Example være "columns=2,showthumb=false"

Delmaler

Tilgjengelige delmaler:
    ▪    ListHeader
    ▪    ListFooter
    ▪    ListEmpty
    ▪    ListItem

De tre første delmalene brukes vanligvis, mens den siste er kun i spesielle tilfeller.

ListHeader
Her kan du angi hva som skal skrives ut før listens innhold. Det kan for Example være en <ul>. Denne skrives ikke ut hvis listen er tom.

ListFooter
Her kan du avslutte det som ble startet i ListHeader, og/eller legge inn paginering. Denne skrives ikke ut hvis listen er tom.

ListEmpty
Dersom listen er tom, skrives innholdet her ut. Det skrives ikke ut noe annet

ListItem
Dersom en ikke har angitt RenderingName, er det mulig å legge inn innhold i ListItem. Her bruker en tagger av typen <!--e title -->. Dersom det legges inn kode eller elementer som kjøres av .net, vil disse kjøres som en del av siden, og dermed være lik for alle elementer.

 

Et utvidet Example:

<script runat="server">
    protected void Page_Load(object sender, EventArgs e)
    {

        //Dette gjøres slik fordi det ikke er mulig å angi koder som parametre
        listCustom.CustomProperties = "columns=" + E("columns");
    }
</script>


<!-- Her brukes de fleste av taggene som er tilgjengelig -->
<er:itemlist ID="listCustom" runat="server" TemplateIdField="Templates" CategoryIdField="Categories" OrderByField="OrderBy" ItemsPerPageField="ItemsPerPage" RenderingName="ListElement.Article.SmallImage.ascx" RenderingNameField="ListRendering" StartPage="1">

<!-- Dette skrives ut i forkant av listen. Her er det mulig å legge inn kode -->
    <ListHeader><ul class="row-fluid list-<%=E("columns") %>-col"></ListHeader>

<!-- Dette skrives ut i etterkant av listen. Her er det inkludert en snippet som inneholder pagineringen -->
    <ListFooter></ul><er:include runat="server" RenderingName="Element.ListPager.ascx" /></ListFooter>

<!-- Dette skrives ut dersom listen er tom -->
    <ListEmpty>
        <er:value runat="server" Field="emtpylistinfo" Tag="div" />
    </ListEmpty>
</er:itemlist>