如何在AspxGridView中获取计数行?

时间:2014-05-26 07:35:34

标签: c# devexpress aspxgridview

我有一个Gridview。我想得到Status = 1和Status = 0行

的计数
    Id    Bla    Bla     Bla  Status

    1                         1 
    27                        0
    323                       1

<dx:ASPxGridView runat="server" ID="grid" Width="100%" >
            <Columns>

         some colums

         ...

         ...

</dx:GridViewDataTextColumn>
 <dx:GridViewDataTextColumn Caption="Status" FieldName="Online">
                </dx:GridViewDataTextColumn>    
        </Columns>
</dx:ASPxGridView>

我怎样才能获得收益?

我想像这样显示

  lblOnline.Text="Online Dealers : "+  countOnline.ToString();
  lblOffline.Text="Offline Dealers : "+ countOffline.ToString();

2 个答案:

答案 0 :(得分:1)

尝试这样的事情。

foreach(GridViewRow row in GridView2.Rows)

{
  int status = Convert.toInt32(row.Cells['statuscolumnindex'].Text);
    if(status == 1)
      { countA++; }
    else
      { countB++; }
}

此处statuscolumnindex是GridView中Status列的整数索引。例如(row.Cells [2])。只是整数值。这不是确切的代码,您必须根据您的要求制作它。

希望这有帮助。

答案 1 :(得分:1)

int countOnline = 0;
foreach (DataRow dr in dataTable.Rows)
{
    if (dr["Status"].Equals("1"))
    {
          countOnline++;
    }
}
int countOffline = dataTable.Rows.Count - countOnline;

您还可以将Status列提取到ArrayList,并使用ArrayList.Sort对列表进行排序,并仅计算第一个排序的0值。