在前台放一个DataList控件
<asp:DataList ID="DataList1" runat="server">
<ItemTemplate>
这里放重复的内容
</ItemTemplate>
</asp:DataList>
<div id="pages">当前页次:<asp:Label ID="labPage" runat="server" Text="1"></asp:Label>/<asp:Label ID="labBackPage" runat="server"></asp:Label>
<a id="btnOne" runat="server"><img src="/images/back_start.gif" width="22" height="11" id="lnkbtnOne" runat="server" alt="首页" /></a>
<a id="btnUp" runat="server"><img src="/images/back.gif" width="16" height="11" id="lnkbtnUp" runat="server" alt="上一页" /></a>
<a id="btnNext" runat="server"><img src="/images/next.gif" width="16" height="11" id="lnkbtnNext" runat="server" alt="下一页" /></a>
<a id="btnBack" runat="server"><img src="/images/next_end.gif" width="22" height="11" id="lnkbtnBack" runat="server" alt="尾页" /></a>
</div>
在.cs后台中...
protected void bind()
{
int curpage = Convert.ToInt32(Request.QueryString["page"])
if (curpage == null || curpage == 0) { curpage = 1}
//使用PagedDataSource类实现DataList控件的分页功能
PagedDataSource ps = new PagedDataSource()
string sql = "select id,title,date from [news] where title<>''"
if (classid1 != null &&classid1 != 0) { sql += " and classid=" + classid1}
if (keyword1 != null) { sql += " and title like '%" + keyword1 + "%'"}
sql += " order by date desc"
//获取数据集
DataSet ds = constr.GetDataSet(sql, "CP")
ps.DataSource = ds.Tables["CP"].DefaultView
//是否可以分页
ps.AllowPaging = true
//显示的数量
ps.PageSize = 20
//取得当前页的页码
ps.CurrentPageIndex = curpage - 1
this.lnkbtnUp.Src = "/images/back.gif"
this.lnkbtnNext.Src = "/images/next.gif"
this.lnkbtnBack.Src = "/images/next_end.gif"
this.lnkbtnOne.Src = "/images/back_start.gif"
this.btnOne.HRef = "/News.aspx?classid=" + classid1 + "&keyword=" + Server.UrlEncode(keyword1) + "&page=1"
this.btnUp.HRef = "/News.aspx?classid=" + classid1 + "&keyword=" + Server.UrlEncode(keyword1) + "&page=" + (curpage - 1)
this.btnNext.HRef = "/News.aspx?classid=" + classid1 + "&keyword=" + Server.UrlEncode(keyword1) + "&page=" + (curpage + 1)
this.btnBack.HRef = "/News.aspx?classid=" + classid1 + "&keyword=" + Server.UrlEncode(keyword1) + "&page=" + ps.PageCount
if (curpage == 1)
{
//不显示第一页按钮
this.lnkbtnOne.Src = "/images/back_start_no.gif"
this.btnOne.HRef = ""
//不显示上一页按钮
this.lnkbtnUp.Src = "/images/back_no.gif"
this.btnUp.HRef = ""
}
if (curpage == ps.PageCount)
{
//不显示下一页
this.lnkbtnNext.Src = "/images/next_no.gif"
this.btnNext.HRef = ""
//不显示最后一页
this.lnkbtnBack.Src = "/images/next_end_no.gif"
this.btnBack.HRef = ""
}
//显示分页数量
this.labBackPage.Text = Convert.ToString(ps.PageCount)
//绑定DataList控件
this.DataList1.DataSource = ps
this.DataList1.DataKeyField = "ID"
this.DataList1.DataBind()
}
无语了,这个也能问的出来啊。。。。。下面的是java的代码,几乎是复制过去就能用。。。/**
* 分页方法
*@returnType:List<Object>
* @param list 源数据
* @param currentPage 当前页
* @param maxNum 每页显示几条
* @param pageNum 总页数
* @return
*/
public static List getPageList(List list,int currentPage,int maxNum,int pageNum){
int fromIndex = 0//从哪里开始截取
int toIndex = 0 //截取几个
if(list == null || list.size() == 0)
return null
//当前页小于或等于总页数时执行
if( currentPage <= pageNum &&currentPage != 0){
fromIndex = (currentPage - 1)*maxNum
if(currentPage == pageNum){
toIndex = list.size()
}
else {
toIndex = currentPage*maxNum
}
}
return list.subList(fromIndex, toIndex)
}
DataGridView 本身就具有分页 可以直接使用的 也可以不用那个分页 那就自己写个 用DataGridView的DataSource来绑定一个DataTable ,DataTable 主要是查询某个区间的数据,主要有几个参数 1 RowCount 一次返回多少行 PageSize一页几个, CurragePage第几页 通过SQl语句 Select top RowCount * from tableName Where Id not in(Select top (CurragePage-1)*PageSize Id form tableName) and 查询条件 大致就这样了 细节地方多注意就是 不懂可以找我 我基本每天都在线的欢迎分享,转载请注明来源:内存溢出
评论列表(0条)