HTML
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns = "false" OnRowDataBound = "OnRowDataBound">
<Columns>
<asp:BoundField DataField = "Item" ItemStyle-CssClass = "Item"/>
<asp:TemplateField>
<ItemTemplate>
<asp:TextBox ID="txtPrice" CssClass = "Price" runat="server" Text = '<%# Eval("Price") %>'></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
Code
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
DataTable dt = new DataTable();
dt.Columns.AddRange(new DataColumn[2] { new DataColumn("Item"), new DataColumn("Price") });
dt.Rows.Add("Shirt", 0);
dt.Rows.Add("Football", 1000);
dt.Rows.Add("Bat", 500);
GridView1.DataSource = dt;
GridView1.DataBind();
}
}
protected void OnRowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
switch ((e.Row.FindControl("txtPrice") as TextBox).Text)
{
case "0":
e.Row.BackColor = Color.Red;
break;
case "1000":
e.Row.BackColor = Color.Green;
break;
case "500":
e.Row.BackColor = Color.Blue;
break;
}
}
}