Please refer this code. Run this code in a new Page.
HTML
<asp:DataList ID="DataList1" runat="server">
<ItemTemplate>
<asp:Label Text='<%# Eval("Id") %>' runat="server" />
<asp:Label ID="lblName" Text='<%# Eval("Name") %>' runat="server" />
<asp:Label ID="lblCountry" Text='<%# Eval("Country") %>' runat="server" />
<asp:Button ID="btnClick" Text="Click Me!" OnClick="Click" runat="server" />
</ItemTemplate>
</asp:DataList>
Namespace
using System.Data;
C#
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
DataTable dt = new DataTable();
dt.Columns.AddRange(new DataColumn[3] { new DataColumn("Id", typeof(int)),
new DataColumn("Name", typeof(string)),
new DataColumn("Country",typeof(string)) });
dt.Rows.Add(1, "John Hammond", "United States");
dt.Rows.Add(2, "Mudassar Khan", "India");
dt.Rows.Add(3, "Suzanne Mathews", "France");
dt.Rows.Add(4, "Robert Schidner", "Russia");
DataList1.DataSource = dt;
DataList1.DataBind();
}
}
protected void Click(object sender, EventArgs e)
{
DataListItem currentItem = (sender as Button).NamingContainer as DataListItem;
foreach (DataListItem item in DataList1.Items)
{
Button btn = item.FindControl("btnClick") as Button;
btn.Attributes["style"] = "";
if (currentItem.ItemIndex == item.ItemIndex)
{
btn.Attributes["style"] = "border: 1px solid red";
}
}
}