日期:2014-05-18  浏览次数:20521 次

datalist如何实现有1,2,3,4这样的分页?

datalist如何实现这样的分页功能?   access数据库

首页   上一页   1   2   3   4   5   6   7   9   10   下一页   尾页

或者这样:

首页   1   2   3   4   5   6   7   9   10   尾页



------解决方案--------------------
我也想知道
------解决方案--------------------
http://zhidao.baidu.com/question/4785848.html
------解决方案--------------------
帮顶,学习中~~~
------解决方案--------------------
aspnetpager6.0分页控件
------解决方案--------------------
帮顶!学习学习
------解决方案--------------------
http://www.webdiyer.com/AspNetPager/default.aspx

aspnetpager6.0
------解决方案--------------------
netpager6.0
对于datalist的分页好像需要储存过程~
------解决方案--------------------
可以用分页控件+存储过程
------解决方案--------------------
用list直接去读取grid里面的数据.在grid里面可以实现分页啊...
------解决方案--------------------
顶起来 我也在关注这个问题

我可以实现分页 但是如果删除了效果就不好了

比方说 一页显示6条记录`~

第一页就是1——6条记录 如果我把3 4删了 那么第一页就显示1 2 5 6 4条记录

求解决办法?
有人说建一个虚拟表?还有其他办法吗?
------解决方案--------------------
可以 运行aspnet分页控件。。。
如果想自己写的话可以运用repeater控件动态指定页码,触发repeater的事件从而给dl指定页码获取数据。。
//aspx代码:
<asp:Repeater ID= "repPageIndex " runat= "server " OnItemCommand= "repPageIndex_ItemCommand ">
<ItemTemplate> [ <asp:LinkButton ID= "lnkBtn " runat= "server " CommandName= "Edit " Text= ' <%# Eval( "IndexID ") %> '> </asp:LinkButton> ]&nbsp; </ItemTemplate>
</asp:Repeater>
//cs代码:大概的:
//给Repeater指定数据源
public void GetPageIndex()
{
DataTable dt = new DataTable();
int repIndex = int.Parse(ViewState[ "RepIndex "].ToString());

dt.Columns.Add( "IndexID ");
int countPage = int.Parse(ViewState[ "CountPage "].ToString());

int indexMaxPage = (repIndex + 1) * 10;//没组的最大索引ID 如:1,2,3,4,5,6,7,8,9,10 则是10,10-20 则是20
int indexMinPage = (repIndex * 10) + 1;

if (countPage < 10)//GV页码不足10
{
lnkNextIndex.Enabled = false;
lnkUpIndex.Enabled = false;
//lnkFirstIndex.Enabled = false;
//lnkLastIndex.Enabled = false;
for (int num = indexMinPage; num <= countPage; num++)
{
DataRow row = dt.NewRow();
row[0] = num;
dt.Rows.Add(row);
lnkNextIndex.Enabled = false;
lnkUpIndex.Enabled = true;
}
}
else
{
if (countPage < indexMaxPage)
{
for (int num = indexMinPage; num <= countPage; num++)
{
DataRow row = dt.NewRow();
row[0] = num;
dt.Rows.Add(row);