Bind Data to a Repeater Control
Example of binding a data source to a repeater control in ASP.Net.// define the repeater control
<asp:Repeater ID="repTimeOffStatus" runat="server">
<HeaderTemplate>
<!-- add header text here. This will appear at the start of the repeater. -->
<table class="table table-hover" style="margin-bottom: 0;">
<thead>
<tr>
<th></th>
<th class="text-center">Sick</th>
<th class="text-center">Vacation</th>
<th class="text-center">Rollover</th>
<th></th>
</tr>
</thead>
<tbody>
</HeaderTemplate>
<ItemTemplate>
<!--
Add the block to be repeated in here. This block will be repeated for each element / row in the datasource.
Use the Eval() method to evaluate the current row in the datasource and output the value to the web page.
-->
<tr>
<td class="text-right"><%# Eval("RowType") %></td>
<td class="text-center"><%# Eval("Sick", "{0:0.###}") %></td>
<td class="text-center"><%# Eval("Vacation", "{0:0.###}") %></td>
<td class="text-center"><%# Eval("Rollover", "{0:0.###}") %></td>
<td><%# Eval("RowType") %></td>
</tr>
</ItemTemplate>
<FooterTemplate>
<!-- add the footer text here. This will appear at the end of the repeater. -->
</tbody>
</table>
</FooterTemplate>
</asp:Repeater>
The code behind. Add this to the Page_Load() event on the page.
// create our BL class that does the work of getting the data
using (var bl = new code.BL.blTimeOffStatus())
// use the BL object to get the data
using (DataTable tbl = bl.GetTimeOffStatus())
{
// set the datasource on the repeater control
this.repTimeOffStatus.DataSource = tbl;
// Call DataBind on the repeater.
// But, we only want to do this if we are NOT in a PostBack or Callback.
if (!this.Page.IsPostBack && !this.Page.IsCallback)
{
this.repTimeOffStatus.DataBind();
}
}
Last modified by Mohit @ 4/8/2025 10:17:10 AM