是这样的  我以前的做法是
把分页数据绑定写成一个私有方法 在页面读取时默认绑定第一页有一个Label存储当前页  Text默认为"1"当点击下一页时 将这个Label加1 然后调用分页数据绑定的方法
当点击下一页时 将这个Label减1 然后调用分页数据绑定的方法但这样对用户体验来说 感觉非常不好用   因为在点击过上一页或下一页时 就会出现重试或取消的提示框 感觉很不好..现在我采用在地址栏上添加一个"&Page=当前页"这个QueryString但现在小弟有一个问题  如果QueryString参数不止只有Page的时候  应该怎么办..
比如  http://localhost:49665/N-xxx/html/School.aspx?SchID=4&Page=1这里有两个参数我只想改变Page的值  重新进入该页面我目前的方法是这样的    protected void LinkNext_Click(object sender, EventArgs e)
    {
        string Url = "~/html/School.aspx?";
        if (Request.Params["SchID"] != null)
        {
            Url += "SchID=" + Request.Params["SchID"].ToString();
        }
        Url += "&mPage=" + (Convert.ToInt32(Request.Params["mPage"] ?? "1") + 1);
        Url += Request.Params["Page"] != null ? "&Page=" + Request.Params["Page"].ToString() : "";
        Response.Redirect(Url);
    }
这是重新拼写地址 然后Response.Redirect这个地址
但这样  我感觉扩展性不强 因为 这种写起来也麻烦 在今后维护过程中 很不好读  如果在该页面又加增加功能 可能又会加一个参数  那样的话 这些地方都要改  非常的麻烦求教各位是用什么方法来写翻页的  主要是不想在刷新的时候弹出提示框

解决方案 »

  1.   

    我倒这是第三方控件 里面有使用说明。。演示分页控件例子<asp:GridView ID="GridView1" runat="server" EnableViewState="false">
        </asp:GridView>
        <webdiyer:AspNetPager ID="AspNetPager1" runat="server" PageSize="10" OnPageChanging="AspNetPager1_PageChanging">
        </webdiyer:AspNetPager>using System;
    using System.Data;
    using Wuqi.Webdiyer;
    using ZhongCong.WebForm;public partial class MySql : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                DisplayData(AspNetPager1.PageSize, 1);
            }
        }    private void DisplayData(int pageSize, int pageIndex)
        {
            string sqlStr = "select count(*) from 测试";
            MySqlData md = new MySqlData();
            AspNetPager1.RecordCount = Convert.ToInt32(md.ExecuteScalar(sqlStr));
            sqlStr = String.Format("select * from 测试 limit {0},{1}", ((pageIndex - 1) * pageSize).ToString(), pageSize.ToString());
            md.SetCommandText(sqlStr);
            DataTable dt = md.FillDataTable();
            md.Close();
            GridView1.DataSource = dt;
            GridView1.DataBind();
        }    protected void AspNetPager1_PageChanging(object src, PageChangingEventArgs e)
        {
            AspNetPager1.CurrentPageIndex = e.NewPageIndex;
            DisplayData(AspNetPager1.PageSize, AspNetPager1.CurrentPageIndex);
        }
       //作者dalmeeme
    }例子你去网上搜一搜吧 很多。
      

  2.   

    楼主请百度或者谷歌aspnetpager