post icon

How to Bind Repeater from DataTable

Come effettuare un Bind di un controllo Repeater a partire da un DataTable

Vediamo in questo esempio come effettuare un Bind di un controllo Repeater a partire da un DataTable.
Ne approfittiamo dell’esempio per vedere anche come ripetere un controllo HTML di tipo radio, quindi creiamo un Repeater che renderizza programmaticamente un Radio Button List.

Vediamo prima il codice ASPX:

<%-- PARTE ASPX --%> <asp:Repeater ID="Repeater1" runat="server"> <HeaderTemplate> <table cellpadding="0" cellspacing="0" border="0" width="100%"> <tr> <td>Header row</td> </tr> </HeaderTemplate> <ItemTemplate> <tr> <td><input type="radio" id="radio_<%#DataBinder.Eval(Container.DataItem, "id_radio")%>" name="radio_esempio" /><%#DataBinder.Eval(Container.DataItem, "testo_radio")%> </td> </tr> </ItemTemplate> <FooterTemplate> <tr> <td>Footer row</td> </tr> </table> </FooterTemplate> </asp:Repeater>

Di seguito, invece, la parte di Code Behind scritta in C# che si occupa di creare un DataTable e impostarlo come DataSource per il Repeater:

<%-- PARTE C# --%> protected void Page_Load(object sender, EventArgs e){ DataTable dt = new DataTable("TB_CASI_INIZIALI"); dt.Columns.Add("id_radio", typeof(Int64)); dt.Columns.Add("testo_radio", typeof(String)); dt.Rows.Add(new object[2] { 1, "Radio Button 1"}); dt.Rows.Add(new object[2] { 2, "Radio Button 2"}); dt.Rows.Add(new object[2] { 3, "Radio Button 3"}); this.Repeater1.DataSource = dt; this.Repeater1.DataBind(); }

Lo stesso snippet può essere preso di esempio per un repeater di una CheckBox List.

Scarica source snippet: snippet_repeater_radio_button_list.txt (1.016,00 bytes)

Enjoy snippet!

16 novembre 2009 @ 17:35

No comments yet.

Leave a comment

Leave a Reply

Are you human? Time limit is exhausted. Please reload CAPTCHA.