高分求GridView分页问题

windstore 2007-03-21 01:12:33
aspx文件中
<asp:GridView ID="gridview_article" runat="server" >
在此省略1000字。。。。
</gridview>

<div class="pageList">
[<asp:LinkButton ID="Button_First" CommandArgument="First" OnClick="PagerButtonClick" runat="server">首页</asp:LinkButton>|
<asp:LinkButton ID="Button_Pre" CommandArgument="Prev" OnClick="PagerButtonClick" runat="server">上一页</asp:LinkButton>|
<asp:LinkButton ID ="Button_Next" CommandArgument="Next" OnClick="PagerButtonClick" runat="server">下一页</asp:LinkButton>|
<asp:LinkButton ID="Button_Last" CommandArgument="Last" OnClick="PagerButtonClick" runat="server">末页</asp:LinkButton>]
<asp:Label ID="Label1" runat="server" />/
<asp:Label ID="Label2" runat="server" />
</div>
div的是放在页面底部的。。也就是说分页的没有放在gridview中。
然后CS文件中的定义如下:
protected void Page_Load(object sender, EventArgs e)
{
Button_First.CommandName="1";
Button_Next.CommandName=(gridview_article.PageCount==1 ? gridview_article.PageCount.ToString() : Convert.ToString((gridview_article.PageIndex+2)));
Button_Pre.CommandName=(gridview_article.PageIndex==0 ? "1" : gridview_article.PageIndex.ToString());
Button_Last.CommandName=gridview_article.PageCount.ToString();
Label1.Text = Convert.ToString((gridview_article.PageIndex + 1));
Label2.Text = gridview_article.PageCount.ToString();
}
//分页LinkButton
protected void PagerButtonClick(object sender,EventArgs e)
{

gridview_article.PageIndex=Convert.ToInt32(((LinkButton)sender).CommandName)-1;

}

现在的问题是。。。我点击首页,上一页,下一页,末页都正常。但是显示当前页和总页数的是错误的。
比如应该是5页的。。第一次一打开,应该是1/5,但是他显示的是 1/0, 点击下一页后 他显示1/5 再点击下一页显示2/5 其实应该是3/5
...全文
417 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
windstore 2007-03-21
  • 打赏
  • 举报
回复
谢谢大家的意见。经过测试。。我把他们方到databound事件中就OK了
windstore 2007-03-21
  • 打赏
  • 举报
回复
算了。还是用我自己写的分页程序吧。。散分。。结贴!
zhangxiaopin 2007-03-21
  • 打赏
  • 举报
回复
//****最好是不用他自带的分页功能,他是把所有数据读出业在分页,如果数据量大了,那样会很慢.
babyrockxray 2007-03-21
  • 打赏
  • 举报
回复
要先绑定数据源,再计算
可以在databound事件里面做
jolinkyo 2007-03-21
  • 打赏
  • 举报
回复
Label1.Text = Convert.ToString((gridview_article.PageIndex + 1));
Label2.Text = gridview_article.PageCount.ToString();

这两行应该在绑定之后的
Page_Load里的要比绑定先执行
antiking 2007-03-21
  • 打赏
  • 举报
回复
那是因为你一开始总页数不存在.在点下一页时在计算出总页数.绑定的地方有问题。
wshuangminlg 2007-03-21
  • 打赏
  • 举报
回复
帮LZ顶

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧