Home > Uncategorized > Asp.net repeater – group records or data – delete selected rows

Asp.net repeater – group records or data – delete selected rows

Although there are many ways to do this, The easiest way is to use a repeater control.
Drop a repeater control and in the codebehind set the datasource and databind it.

Repeater1.DataSource = datasource;
Repeater1.DataBind();

Then switch to source view and insert the following

<asp:Repeater ID="Repeater1" runat="server" 
onitemdatabound="Repeater1_ItemDataBound">
<HeaderTemplate><table></HeaderTemplate>
 <ItemTemplate>

 <%# this.RenderGroup(Eval("ticker_name") as string)%>
 <tr>
 <td> <%# DataBinder.Eval(Container.DataItem, "emp_id") %></td>

<span style="color: #993300;"> &lt;td&gt; &lt;%# DataBinder.Eval(Container.DataItem, "emp_name") %&gt;&lt;/td&gt;</span>
<span style="color: #993300;"> &lt;td&gt; &lt;%# DataBinder.Eval(Container.DataItem, "display_id") %&gt;&lt;/td&gt;</span>

<span style="color: #993300;"> </span><span style="color: #993300;">&lt;/tr&gt;&lt;/ItemTemplate&gt;</span>

<span style="color: #993300;">&lt;FooterTemplate&gt;&lt;/table&gt;&lt;/FooterTemplate&gt;</span>
<span style="color: #993300;"> &lt;/asp:Repeater&gt;</span>

Now in the code behind add this method

string lastGroup = string.Empty;
protected string RenderGroup(string Group)
{
if (Group == this.lastGroup)
return “”;
else
{
this.lastGroup = Group;
return “<tr class=’groupheader’><td colspan=4>” + Group + “</td></tr>”;
}

}

Run the application. All the records will be grouped

Now we will see how to delete selected items in the repeater

Add checkbox control to the repeater

<asp:Repeater ID=”Repeater1″ runat=”server”
onitemdatabound=”Repeater1_ItemDataBound”>
<HeaderTemplate><table></HeaderTemplate>
<ItemTemplate>

<%# this.RenderGroup(Eval(“ticker_name”) as string)%>
<tr>
<td> <%# DataBinder.Eval(Container.DataItem, “emp_id”) %></td>

<td> <%# DataBinder.Eval(Container.DataItem, “emp_name”) %></td>
<td> <%# DataBinder.Eval(Container.DataItem, “display_id”) %></td>
<td>
<asp:CheckBox ID=”CheckBox1″ runat=”server” internalid='<%# Eval(“emp_id”) %>’/></td>
</tr></ItemTemplate>

<FooterTemplate></table></FooterTemplate>
</asp:Repeater>

Add a button outside the repeater and in the button click event write this code

protected void Button2_Click(object sender, EventArgs e)
{
foreach (RepeaterItem dataItem in Repeater1.Items)
{
CheckBox chk = (CheckBox)dataItem.FindControl(“CheckBox1”);
if (chk.Checked == true)
{
int empid= Convert.ToInt32(chk.Attributes[“internalid”]);

//write the code to delete the rows here
}

}
}

Categories: Uncategorized
  1. No comments yet.
  1. No trackbacks yet.

Leave a comment