HOW TO GIVE GRIDVIEW CELL FONT COLOUR ACCORDING TO CONDITION

Goti Bandu

Total Post:119

Points:835
Posted by  Goti Bandu
C#  Gridview 
 877  View(s)
Ratings:
Rate this:

How can I give colour to gridview's cell text according to condition. I have a below gridview and I am taking data in gridview by code behind.

 <asp:GridView ID="GridView3" runat="server" AllowPaging="true" PageSize="5"

   AutoGenerateColumns="false"  Width="100%" OnPageIndexChanging="GridView3_PageIndexChanging"

   CssClass="Grid">

                   <RowStyle CssClass="GridRow"/>

                     <Columns>

                         <asp:BoundField HeaderText="No" DataField="id" Visible="false"/>

                         <asp:BoundField HeaderText="Scenario" DataField="Scenario"/>

                         <asp:BoundField HeaderText="Type" DataField="Type"/>

                         <asp:BoundField HeaderText="Station Name" DataField="StationName"/>

                         <asp:BoundField HeaderText="Parameter" DataField="PARAM"/>

                         <asp:BoundField HeaderText="Value" DataField="Value"

                         SortExpression="Value" DataFormatString="{0:F2}"/>

                    </Columns>

                     <PagerStyle BackColor="White" Height="40px" Font-Bold="true" Font-

                      Size="Medium" ForeColor="Green" HorizontalAlign="Center"/>

                      <PagerSettings FirstPageText="First" LastPageText="Last"

                      Mode="NumericFirstLast" PageButtonCount="3" />

                      <HeaderStyle BackColor="#ABDB78" ForeColor="Black" Height="35px" Font-

                      Size="13px" Font-Names="verdana"/>

                </asp:GridView>

I am binding data with this grid by code behind.

   protected void ReservGridBind()

    {

        string name = Request.QueryString[1].ToString();

 

        string query = "SELECT SD.id,SD.Scenario,SD.Value,PR.Type,PR.StationName,PR.PARAM

        from sgwebdb.param_reference as PR Inner join sgwebdb.scenario_data as SD

        ON PR.Param_Id=SD.Param_Id INNER JOIN sgwebdb.qualicision_detail as Q

        ON SD.SCENARIO=Q.Alternative where PR.Type='Reservoirs' and Q.Alternative='" + name +"'";

 

        this.GridView1.DataSource = PSI.DataAccess.Database.DatabaseManager

                                    .GetConnection().GetData(query);

        GridView1.DataBind();

 

    condition :

    if  number < 0.0 then blue colour ,

     number > 0.0 && text < 4.0 then green colour,

      number > 4.0 then red colour.

 

    Please help me for this gridview's cell text colour.

 

  1. Jeet Verma

    Post:110

    Points:776
    Re: How to Give Gridview cell font colour according to condition

    Markup:

    <asp:GridView ID="GridView3" runat="server"

        AllowPaging="true" PageSize="5"

        AutoGenerateColumns="false"

        Width="100%"

        OnRowDataBound="GridView3_RowDataBound"      

        OnPageIndexChanging="GridView3_PageIndexChanging"

        CssClass="Grid">

    Code Behind:

    protected void GridView3_RowDataBound(object sender, GridViewRowEventArgs e)

    {

         if (e.Row.RowType == DataControlRowType.DataRow)

         {

             int iText =  Convert.ToInt32(e.Row.Cells[4].Text);

     

             if (iText < 0)

                 e.Row.Cells[4].ForeColor = System.Drawing.Color.Blue;            

             else if (iText > 0 && iText < 4)             

                 e.Row.Cells[4].ForeColor = System.Drawing.Color.Green;

             else if (iText > 4)          

                 e.Row.Cells[4].ForeColor = System.Drawing.Color.Red;           

         }

    }

     

Answer

NEWSLETTER

Enter your email address here always to be updated. We promise not to spam!