如何计算gridview中具有某些特定数据的记录的数量

时间:2015-01-27 08:00:39

标签: asp.net aspxgridview

如何计算Gridview中具有列中某些特定数据的记录的数量

 name        result
 ========    ======
 krishna     pass
 sanjay      pass    
 ajay        fail

在网格视图中需要输出 - 在Gridview上面已经存在,根据该网格我必须制作另一个网格来计算结果

result   no 
======   =====
pass     2  
fail     1    

1 个答案:

答案 0 :(得分:0)

在数据行绑定中,我计算了

 protected void GVKeywordReport_RowDataBound(object sender, GridViewRowEventArgs e)
        {

            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                DataRow pr = ((DataRowView)e.Row.DataItem).Row;
                int oldPos = Convert.ToInt32(pr["oldposition"]);
                int newPos = Convert.ToInt32(pr["newposition"]);
                GVKeywordReport.HeaderRow.Cells[3].Text = txtfrmdate.Text;
                GVKeywordReport.HeaderRow.Cells[4].Text = txtEndDate.Text;

                GVKeywordReport.HeaderRow.BackColor = ColorTranslator.FromHtml("#B3B300");
                e.Row.Cells[0].BackColor = ColorTranslator.FromHtml("#B3B300");
                e.Row.Cells[5].BackColor = ColorTranslator.FromHtml("#FFFFFF");

                if (oldPos == newPos)
                {
                    e.Row.BackColor = ColorTranslator.FromHtml("#FF950E");
                    e.Row.Cells[6].Text = "No Change";
                   nc= nc+1;

                }
                else if (oldPos > newPos)
                {
                    e.Row.BackColor = ColorTranslator.FromHtml("#FFFFCC");
                    e.Row.Cells[6].Text = "Improved";
                   imprv= imprv+1;
                }
                else  

        {
            e.Row.BackColor = ColorTranslator.FromHtml("#FF0000");
            e.Row.Cells[6].Text = "Decreased";
            decrs=decrs+1;
        }
       // e.Row.Cells[0].BackColor = ColorTranslator.FromHtml("#7DA647");
    }
    txt_TargetReached.Text = "0";
    txtDecreased.Text =Convert.ToString(decrs);