repeater pageDataSource 分页

protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            BindDataByPage();
        }
    }
    void BindDataByPage()
    {
        int currentPage = 1;
        if (this.PageNum.Text != "")
            currentPage = Convert.ToInt32(PageNum.Text);
        string sql = "SELECT * FROM _article ";
        chuanData.ConString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("App_Data") + "/data.mdb";
        //新建分页对象实例
        PagedDataSource pds = new PagedDataSource();
        pds.DataSource = chuanData.DataTable(sql).DefaultView;
        pds.AllowPaging = true;
        pds.PageSize = 4;

        //总页数
        this.PageCount.Text = pds.PageCount.ToString();
        //由于页码索引从零开始,则执行减一操作
        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;
        }

        Repeater1.DataSource = pds;
        Repeater1.DataBind();

    }

    //向前翻页操作事件
    public void btnFront_Click(object sender, System.EventArgs e)
    {
        PageNum.Text = Convert.ToString(Convert.ToInt32(PageNum.Text) - 1);
        BindDataByPage();
    }

    //选定至第一页操作事件
    public void btnFirst_Click(object sender, System.EventArgs e)
    {
        PageNum.Text = "1";
        BindDataByPage();
    }

    //下一页事件
    public void btnNext_Click(object sender, System.EventArgs e)
    {
        PageNum.Text = Convert.ToString(Convert.ToInt32(PageNum.Text) + 1);
        BindDataByPage();
    }

    //最后一页选定事件
    public void btnLast_Click(object sender, System.EventArgs e)
    {
        PageNum.Text = Convert.ToString(Convert.ToInt32(PageCount.Text));
        BindDataByPage();
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值