#691 - Utilizzare i Template su file con i Data Controls

I DataControls consentono di recuperare un Template da un file esterno, permettendo di centralizzare la definizione di un template da condividere in più parti dell'applicazione.

<SCRIPT RUNAT="SERVER" LANGUAGE="C#">
void Page_Load()
{
  rp.ItemTemplate = Page.LoadTemplate("repeater.ascx");
  rp.DataSource = ds;
  rp.DataBind();
}
</SCRIPT>
<asp:repeater id="rp" runat="server" />

Il template è un semplice control, l'unica accortezza è quella di convertire il container in RepeaterItem nel caso di un Repeater, DataListItem nel caso di un DataList e DataGridItem nel caso di un DataGrid, perchè sia possibile accedere dal control al DataSource.
Nel file repeater.ascx andremo ad inserire:

<%@Control%>
<a href="<%#DataBinder.Eval(((RepeaterItem)Container).DataItem, "link") %>">
<%#DataBinder.Eval(((RepeaterItem)Container).DataItem, "testo") %></a>

Ovviamente questa tecnica può essere sfruttata per tutti i Template dei controlli, come ad esempio AlternatingItemTemplate o HeaderTemplate, per rendere più consistente il look della propria applicazione.


Approfondimenti

Commenti

Esprimi il tuo giudizio su questo script:

Per procedere devi essere autenticato.

Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.




IN EVIDENZA
MISC