这是显示的myDategrid1的数据
pro_id  pro_name 
  1         桌子
  2         书
  3         盘子
 空值      空值
 空值      空值
我用MyDataGrid1.Items.Count可得到总记录数为5
现在我只想得到不为空值的行的总记录数.如上面的GRID,就应该是3,
请大家指点小弟.

解决方案 »

  1.   

    你写sql判断一下ID 不等于空就行了呀,就在数据库提3条
      

  2.   

    private int i=1;itemDataBind()
    {
     i++;
    }
    i
      

  3.   

    wangdetian168(闪灵),能再稍详细一点吗,谢谢您
      

  4.   

    貌似也可行
    假设你的ID列在DataGrid的第一列
    那么只要ID不为空就+1计数        if (e.Row.Cells[0].Text != "")
            {
                i++;
            }
      

  5.   

    public int RC()

    int i=0,recordCount=0;
            while (i < this.yDataGrid1.Rows.Count)
            {
                DataRow dr = ds.Tables["tableID"].Rows[i];
                if (dr["pro_id"].ToString ()!="" ) 
                    recordCount +=1;
                i += 1;
            }
    return recordCount;
    }
      

  6.   

    大概了解大家的意思,

    private int i
    ...
    然后在itemDataBind
     if (e.Row.Cells[0].Text != "")
            {
                i++;
            }
    int Pcount=???  //如何得到记录数
    还是不太懂.
      

  7.   

    wandnv219看样子应该可行,先谢谢了.我马上试试
      

  8.   

    楼主看错了,统计记录数的是  wandnv219() 代码里的变里 recordCount 啊,不是i,i是用作循环条件判断的
      

  9.   

    刚才试了wandnv219(), 有问题,还是不能解决
      

  10.   

    while (i < this.yDataGrid1.Rows.Count)
    没有Rows对像.
      

  11.   

    打错了
    应该是 while(i<ds.Tables.Count)
      

  12.   

    谢谢各位朋友.我采取另一种方法,在SQL中COUNT.分少了点,对不注大家了