利用SqlDataAdapter 分页的问题

      学习日记 2007-5-8 16:20

利用sda分页的问题,上次在网络上看到的一个解释,是有道理的,不过有一个误区,就是它是基于0开始的,

 也就是说你要显示1-10条数据的时候,就得写sda.Fill(ds,0,10,tablename),其中,ds表示你要填充的数据集,而0就表示你要开始的记录(基于0开始),10表示你这一页最多显示的记录,tablename表示你要填充的临时表。

   而如何获得具体的第几页就可以通过以完成:

 1、得出总的记录数,total  2、设置每页显示的数目:pagesize

 总页数为totalpage= total/pagesize==0?total/pagesize:total/pagesize+1

3.第几页从第几条开始显示记录:要判断给定的页数index,如果index大于totalpage的话,就显示最后一页的内容,即:

开始的记录算法为:(totalpage-1)×pagesize 例如一共三页,是从(3-1)*10=20开始的,其实是21条到30,但是它基于0的。如果index<totalpage的话,就用(index-1)*pagesize  可以了。。

标签集:TAGS:
回复Comments() 点击Count()

回复Comments

{commenttime}{commentauthor}

{CommentUrl}
{commentcontent}