首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 一个分页问题,VS2003 [已结贴,结贴人:xi_ha]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-13 17:28:50 楼主
    我是用的自带分页功能,一切正常,但是发现一个严重的问题。

    每页显示10条,页码显示,假设我选了条件得出有2页的结果,
    现在点击了页码‘2’后,然后再组合查询条件,点击查询报错:
    无效的 CurrentPageIndex 值。它必须大于等于 0 且小于 PageCount。

    我知道应该在dg_info_PageIndexChanged()加判断,可不知道怎么写,谁告诉我呢?

    private void dg_info_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
    {
    dg_info.CurrentPageIndex=e.NewPageIndex;

    getdata();


    }
    35  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • dengyi425
    • 等级:
    发表于:2008-05-13 17:32:431楼 得分:0
    应该在dg_info_PageIndexChanging中加
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-13 17:34:532楼 得分:0
    哈不会吧,发个全代码上来,通过测试立马结帖。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-13 17:36:503楼 得分:0
    这样没错
    this.DataGrid1.CurrentPageIndex=e.NewPageIndex;
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • dengyi425
    • 等级:
    发表于:2008-05-13 17:39:434楼 得分:0
    C# code
    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { this.GridView1.PageIndex = e.NewPageIndex; getdata(); }


    我刚用05写了一个.没问题
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • syc958
    • 等级:
    发表于:2008-05-13 17:40:425楼 得分:0
    查询前把当前页设为第一页!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-13 17:44:186楼 得分:0
    兄弟们,本来呢,我的代码没有问题,是经过反复测试出来的问题,
    不知道你们有没看我的操作过程,我是按选择条件来执行查询的,
    第一步:选择条件,得出的结果有2页;
    第二步:我点击那个页码’2‘,就到了第二页,
    好,这两步都没有问题,
    第三步,重新选择查询条件,点击’查询‘
    结果,报错。

    不知道有看明白否
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • dengyi425
    • 等级:
    发表于:2008-05-13 17:51:267楼 得分:0
    加一句if (!Page.IsPostBack)
    {
        //代码
    }
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-13 17:53:388楼 得分:0
    点击查询后,把DataGrid的CurrentPageIndex设置为0
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-13 17:57:099楼 得分:35
    点击第二页之后,DataGrid的CurrentPageIndex会变为1,如果再次查询的结果是1页的话,CurrentPageIndex=1会视为非法,所以点击查询是重新设置CurrentPageIndex=0,再绑定数据。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-13 18:09:2810楼 得分:0
    通过我的测试,Aderlee的方法可行,
    我在getdata()方法中加了一句:dg_info.CurrentPageIndex=0;
    成功!谢谢
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-13 18:19:1411楼 得分:0
    还有个问题,选择组合条件,数据从有2页向不够2页跳转,也会报错。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-13 18:19:5312楼 得分:0
    等下回来,再测试。。。。
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved