zoukankan      html  css  js  c++  java
  • 如何获取GridView的总记录数?

    如何获取GridView的总记录数?
    用GridView.Rows.Count的话获取的只是当前页的记录数,用GridView.PageSize * GridView.PageCount的话,如果最后一页的记录数不是GridView.PageSize条的话,获取的总记录数就不准确。因此,我们要编写代码判断,如下:

    C#代码

     protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
     {
        if (GridView1.PageCount > 0)     //  如果页数大于0  
        {  
     
          GridView1.PageIndex = GridView1.PageCount - 1;   //  将当前显示页的索引转到最后一页   
        GridView1.DataBind();         //重新绑定数据,这是十分重要,这样才能到达最后一页  
        int lastSize = GridView1.Rows.Count;           //  然后获得最后一页的行数  
        if (GridView1.PageCount > 1)     //  如果页数大于1页,则计算出  
        {                                                       //  总行数=(总页数-1)* 每页行数    最后一页的行数  
            int rowsCount = GridView1.PageSize * (GridView1.PageCount - 1) ; // lastSize;  
                recordCount.Text = rowsCount.ToString();      //  将它赋给一个Label  
          }  
       else   
                recordCount.Text = lastSize.ToString();   //如果页数只有一页,则直接将该页的行数赋给Label  
                GridView1.PageIndex = 0;             
      }  
       else recordCount.Text = "0";     //  如果无记录,页显示0 

    }

    如果用SqlDataSource作为GridView数据源的话,就很简单了,在SqlDataSource的Selected事件中编写如下的代码:

    C#代码
    protected void SqlDataSource1_Selected(object sender, SqlDataSourceStatusEventArgs e)  
    {  
            lblNum.Text = e.AffectedRows.ToString();   //e.AffectedRows获取的就是总记录数  

  • 相关阅读:
    Mac OS中使用VScode配置C语言开发环境
    图形数据库(GraphDB)
    将博客搬至CSDN
    Nodejs课堂笔记-第四课 Dynamodb为何物
    Nodejs课堂笔记-第三课 构建一个nodejs的Docker镜像
    Nodejs课堂笔记-第二课 package.json的作用
    MyBatis 3(中文版) 第四章 使用注解配置SQL映射器
    idea hibernate jpa 生成实体类
    Maven常用配置
    spring发送邮件
  • 原文地址:https://www.cnblogs.com/sdjxcolin/p/1427179.html
Copyright © 2011-2022 走看看