ASP.NET Ripetitore di Modello, il Codice Condizionale per ogni n-Esimo elemento
Sto usando un asp.net ripetitore di creare un gruppo di immagini. L’immagine di markup è lo stesso modo standard <ItemTemplate>
è bene.
Tuttavia, voglio avvolgere K immagini in un div. Diciamo che mi legano 25+ immagini dal ripetitore e voglio 5 immagini al div. Come posso fare in modo condizionale creando l’inizio e il tag di chiusura per il div?
È questo un caso più adatte per un ciclo for.
- È possibile ottenere che utilizzando i concetti mostrato di seguito, è solo bisogno di modificarlo per soddisfare i vostri scopi. StackOverflow gli utenti non sono qui per scrivere “teh codez’ per voi, siamo qui per aiutarci a vicenda imparare. Mostrare il codice che hai scritto/provato e ci può aiutare a ordinare.
- Yup, a chiarire la questione
Questo dovrebbe funzionare per voi, non per nulla nel codice dietro (diversamente dall’associazione il ripetitore..):
Qui è dove Asp.Net WebForms può dare incredibile RAD efficienza.
È possibile utilizzare il controllo ListView, e impostare il numero di elementi per “gruppo”, che consentirà di impostare il codice HTML che circonda un gruppo, così come ogni singolo elemento. In questo modo si può racchiudere il gruppo con i tag condizionali.
Se si desidera mantenere il vostro markup della pagina ASPX che si potrebbe provare anche questa variante di David metodo:
Nella pagina aspx:
Nell’evento ItemDataBound nel codebehind:
Aggiungere due etichette vuote controlli nel tuo Ripetitori ItemTemplate in cui si chiede al tag div per essere.
Quindi aggiungere un evento ItemDataBound del Ripetitore.
Poi inserisci questo codice nell’evento ItemDataBound:
Nota – Questo avrà bisogno di qualche ritocco per gestire il primo div e potrebbe essere necessario fare qualcosa di simile Se (e.Voce.ItemIndex + 1) Mod 5 = 0 per ottenere il div per mostrare esattamente dove si desidera.
Per ulteriori informazioni:
DataListItem.ItemIndex Proprietà
DataList.Evento ItemDataBound