技术开发 频道

对分页控件进行分页的封装


【IT168技术文档】

#region 对分页控件进行分页的封装 /// <summary> /// 分页 /// </summary> /// <param name="pagesize">设定分页大的小</param> /// <param name="dst">需要的数据集</param> /// <param name="nowpage">传递当前页数</param> /// <returns>返回值解释:返回分页总数:result[0],上一页:result[1],下一页:result[2],pad:result[3]</returns> public object [] Page(int pagesize,DataSet dst,int nowpage) { int pageCount = 0;//总页数 int recordCount = 0;//总行数 object [] result = new object[4];//返回的字符串 PagedDataSource pad = new PagedDataSource(); pad.DataSource = dst.Tables[0].DefaultView; pad.AllowPaging = true; pad.PageSize = pagesize;//分页大小 recordCount = dst.Tables[0].Rows.Count;//得到总行数。。。 pageCount = recordCount / pad.PageSize;//得到总页数。。。 if (recordCount % pad.PageSize > 0) { pageCount++;//就是说如果最后一页小于三行时在得到总页数时会少一页。。而这里通此式判断可以加上那一页。。 } result[0] = pageCount.ToString();//返回总页数 pad.CurrentPageIndex = nowpage - 1;//???????? //判断是否为上一页 if (!pad.IsFirstPage) { result[1] = Convert.ToString(nowpage - 1); } else { result[1] = null; } //判断是否为下一页 if (!pad.IsLastPage) { result[2] = Convert.ToString(nowpage + 1); } else { result[2] = null; } result[3] = pad; return result; }
0
相关文章