Repeater实现分页

 

以下是我实现的代码:(都是些简单的代码不需要特别说明了,如果有不明白的朋友可以来信问)

using  System;
using  System.Collections;
using  System.ComponentModel;
using  System.Data;
using  System.Drawing;
using  System.Web;
using  System.Web.SessionState;
using  System.Web.UI;
using  System.Web.UI.WebControls;
using  System.Web.UI.HtmlControls;

namespace  Web.guestbook
{
    
/// <summary>
    
/// veiwguestbook 的摘要说明。
    
/// </summary>

    public class veiwguestbook : System.Web.UI.Page
    
{
        
protected System.Web.UI.WebControls.Repeater Repeater1;
        
protected System.Web.UI.WebControls.Label lblCurrentPage;
        
protected System.Web.UI.WebControls.Button btnPrev;
        
protected System.Web.UI.WebControls.Label lblPageSum;
        
protected System.Web.UI.WebControls.Button btnFirst;
        
protected System.Web.UI.WebControls.Button btnlast;
        
protected System.Web.UI.WebControls.TextBox txtPage;
        
protected System.Web.UI.WebControls.Button btnPage;
        
protected System.Web.UI.WebControls.Button btnNext;
    
        
private void Page_Load(object sender, System.EventArgs e)
        
{
            
// 在此处放置用户代码以初始化页面
            if(this.IsPostBack == false)
            
{
                
//初始化第一页
                this.lblCurrentPage.Text = "1";
                
this.Databind();
            }

        }


        
Web 窗体设计器生成的代码

        
//绑定
        public void Databind()
        
{
            
int CurPage = Convert.ToInt32(this.lblCurrentPage.Text);
            
//对PagedDataSource 对象的相关属性赋值
            Business.guestbook gbook = new Business.guestbook();
            PagedDataSource pds 
= new PagedDataSource();
            pds.DataSource 
= gbook.SelectGuestBook().Tables["SelectGuestBook"].DefaultView;
            pds.AllowPaging 
= true;
            
            
//每页的个数
            pds.PageSize = 3;
            
//初始化
            pds.CurrentPageIndex = CurPage -1;
            
//总页数
            this.lblPageSum.Text = Convert.ToString(pds.PageCount);

            
//设置按钮可用状态
            this.btnPrev.Enabled = true;
            
this.btnNext.Enabled = true;
            
            
//如果是首页
            if(CurPage == 1)
            
{
                
this.btnPrev.Enabled = false;
                
this.btnFirst.Enabled = false;
                
            }

            
            
//如果是最后一页(PageCount:总页数,从1开始)
            if(CurPage == pds.PageCount)
            
{
                
this.btnNext.Enabled = false;
                
this.btnlast.Enabled = false;
            }


            
//不是首页
            if(CurPage != 1)
            
{
                
this.btnFirst.Enabled = true;
            }


            
//不是最后一页
            if(CurPage != pds.PageCount)
            
{
                
this.btnlast.Enabled = true;
            }


            
//把PagedDataSource绑定到Repeater1
            this.Repeater1.DataSource = pds;
            
this.Repeater1.DataBind(); 
        }


        
//上一页
        private void btnPrev_Click(object sender, System.EventArgs e)
        
{
            
this.lblCurrentPage.Text = (Convert.ToInt32(this.lblCurrentPage.Text) - 1).ToString();
            
this.Databind();
        }


        
//下一页
        private void btnNext_Click(object sender, System.EventArgs e)
        
{
            
this.lblCurrentPage.Text = (Convert.ToInt32(this.lblCurrentPage.Text) + 1).ToString();
            
this.Databind();
        }


        
//首页
        private void btnFirst_Click(object sender, System.EventArgs e)
        
{
            
this.lblCurrentPage.Text = "1";
            
this.Databind();
        }


        
//未页
        private void btnlast_Click(object sender, System.EventArgs e)
        
{
            
this.lblCurrentPage.Text = this.lblPageSum.Text;
            
this.Databind();
        }


        
//转到页
        private void btnPage_Click(object sender, System.EventArgs e)
        
{
            
if(this.txtPage.Text != "" && this.txtPage.Text != null)
            
{
                
if(int.Parse(this.txtPage.Text) <= int.Parse(this.lblPageSum.Text) && int.Parse(this.txtPage.Text) > 0)
                
{                                                                   
                    
this.lblCurrentPage.Text = this.txtPage.Text;
                }

                
else
                
{
                    
this.Response.Write("<script>alert('对不起你要的页不存在,将转到首页!');</script>");
                    
this.lblCurrentPage.Text = "1";
                }

                
this.Databind();
            }

            
else
            
{
                
this.Response.Write("<script>alert('请输入要转到的页数!');</script>");
            }
            
        }

    }

}

 
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值