.NET c#中list集合进行分页处理数据,实现分页效果


案例:
部分重点代码

public int pagesize = 12;//每一页显示数据的条数,在这里让每一页显示12条
public int pageindex;//记录当前的页数为第几页
public int pagecount;//总页数
public List<Model.Prouuct_zs> listpro_down = new List<Prouuct_zs>();//一个要分页的,类型数据集合,存储的是所有的数据
public List<Model.Prouuct_zs> productes = new List<Model.Prouuct_zs>();//用来存储要展示的数据


int pagees = listpro_down.Count;//所有数据的总条数
//计算总页数
if (pagees % pagesize == 0)
 {
     pagecount = pagees / pagesize;
 }
 else
 {
     pagecount = (pagees / pagesize) + 1;
 }
例如页面加载时pageindex=1
productes.Clear();
pageindex = 1;
productes= listpro_down.Skip((pageindex - 1) * pagesize).Take(pagesize).ToList();//分页的重点
页面遍历productes给定数据,可以绑定当前页pageindex,总页数pagecount



//上一页
 protected void Button1_Click(object sender, EventArgs e)
 {
 		pageindex = int.Parse(Request.Form["index"]);//获取页面上的当前页
         if (pageindex <= 1)
          {
              pageindex = 1;
              productes.Clear();//记得每次清空展示数据的集合,在从新给定
              productes = listpro_down.Skip((pageindex - 1) * pagesize).Take(pagesize).ToList();
          }
          else
          {
              pageindex = pageindex - 1;
              productes.Clear();
              productes =listpro_down.Skip((pageindex - 1) * pagesize).Take(pagesize).ToList();
          }
 }
//下一页
 protected void Button2_Click(object sender, EventArgs e)
 {
 		pageindex = int.Parse(Request.Form["index"]);
        if (pageindex >= pagecount)
         {
             pageindex = pagecount;
             productes.Clear();
             productes =listpro_down.Skip((pageindex - 1) * pagesize).Take(pagesize).ToList();
         }
         else
         {
             pageindex = pageindex + 1;
             productes.Clear();
             productes = listpro_down.Skip((pageindex - 1) * pagesize).Take(pagesize).ToList();
         }
 }

根据个人需求…


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM