//分页绑定方法
  void BindDataByPage()
  {
   //标记当前页码
   int currentPage=Convert.ToInt32(PageNum.Text);
    
   //新建数据库操作类
   EasybuyExcuData goodCategory=new EasybuyExcuData();
   int categoryID=Int32.Parse(Request.Params["CategoryID"]);
   
DataSet ds=new DataSet();
   //获得返回的dataset对象,按类别编号
   ds=goodCategory.GetGoodsCategory(categoryID);
   //新建分页对象实例
   PagedDataSource pds=new PagedDataSource();
pds.DataSource=ds.Tables[0].DefaultView;
   pds.AllowPaging=true;
   pds.PageSize=4;
   //由于页码索引从零开始,则执行减一操作
   pds.CurrentPageIndex=currentPage -1;
   btnFirst.Enabled=true;
   btnFront.Enabled=true;
   btnNext.Enabled=true;
   btnLast.Enabled=true;
   if(currentPage==1)
   {
    btnFront.Enabled=false;
    btnFirst.Enabled=false;
   }
   if(currentPage==pds.PageCount)
   {
    btnNext.Enabled=false;
    btnLast.Enabled=false;
   }
   GoodsByCategoryList.DataSource=pds;
   GoodsByCategoryList.DataBind();
}
  //计算出该类商品的页总数
  int CountPage()
  {
   EasybuyExcuData count=new EasybuyExcuData();
   int categoryID=Int32.Parse(Request.Params["CategoryID"]);
   DataSet ds=count.GetGoodsCategory(categoryID);
   PagedDataSource pds=new PagedDataSource();
   pds.DataSource=ds.Tables[0].DefaultView;
   pds.AllowPaging=true;
   pds.PageSize=4;
   //返回页面总数
   return pds.PageCount;
}
  //将对应页码值动态添加至选定控件
  void BindNumDropDownList()
  {
   for(int i=1;i<=CountPage();i++)
   {
    NumberList.Items.Add(i.ToString());
   }
  }
 //向前翻页操作事件
  private void btnFront_Click(object sender, System.EventArgs e)
  {
   PageNum.Text=Convert.ToString(Convert.ToInt32(PageNum.Text)-1);
   BindDataByPage();
   //将默认选定页归1
   NumberList.SelectedValue=PageNum.Text;
  }
  //选定至第一页操作事件
  private void btnFirst_Click(object sender, System.EventArgs e)
  {
   PageNum.Text="1";
   BindDataByPage();
   //将默认选定页归1
   NumberList.SelectedValue=PageNum.Text;
  }
  //下一页事件
  private void btnNext_Click(object sender, System.EventArgs e)
  {
   PageNum.Text=Convert.ToString(Convert.ToInt32(PageNum.Text)+1);
   BindDataByPage();
   //将默认选定页归1
   NumberList.SelectedValue=PageNum.Text;
  }
  //最后一页选定事件
  private void btnLast_Click(object sender, System.EventArgs e)
  {
   //在跳转至末页时必须先计算出页面总数,将其显出来
   PageNum.Text=CountPage().ToString();
   BindDataByPage();
   //将默认选定页归1
   NumberList.SelectedValue=PageNum.Text;
}
  //当下拉列表选定页码时转至对应选定页
  private void NumberList_SelectedIndexChanged(object sender, System.EventArgs e)
  {
   PageNum.Text=NumberList.SelectedValue;
   BindDataByPage();
  }
同时Page_Load()事件为
  private void Page_Load(object sender, System.EventArgs e)
  {
   // 在此处放置用代码以初始化页面
   if(!IsPostBack)
   {
    BindDataByPage();
    BindNumDropDownList();
   }
  }
 
                    
                     
                    
                 
                    
                 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号