Repeater的抽象分页控件

    protected void lnkBtnFirst_Click(object sender, EventArgs e)
    {
       lblCurrentPage.Text = "1";  //第一页
        DataListBind();
    }
    protected void lnkBtnPrevious_Click(object sender, EventArgs e)
    {
       lblCurrentPage.Text = (Convert.ToInt32(lblCurrentPage.Text) - 1).ToString();  //上一页
        DataListBind();
    }
    protected void lnkBtnNext_Click(object sender, EventArgs e)
    {
       lblCurrentPage.Text = (Convert.ToInt32(lblCurrentPage.Text) + 1).ToString(); //下一页
        DataListBind();
    }
    protected void lnkBtnLast_Click(object sender, EventArgs e)   //最后一页
    {
       lblCurrentPage.Text = lblSumPage.Text;
       DataListBind();
    }

 

/// <summary>
    /// 绑定DataList控件,并且设置分页
    /// </summary>
    /// <param name="infoType">信息类型</param>
    /// <param name="infoKey">查询的关键字(如果为空,则查询所有)</param>
    /// <param name="currentPage">当前页</param>
    /// <param name="PageSize">每页显示数量</param>
    /// <returns>返回PagedDataSource对象</returns>
    public PagedDataSource PageDataListBind(string infoType, string infoKey, int currentPage,int PageSize)
    {
        PagedDataSource pds = new PagedDataSource();
        pds.DataSource = SelectInfo(infoType, infoKey).Tables[0].DefaultView; //将查询结果绑定到分页数据源上。
        pds.AllowPaging = true;          //允许分页
        pds.PageSize = PageSize;          //设置每页显示的页数
        pds.CurrentPageIndex = currentPage - 1;   //设置当前页
        return pds;
    }


 

/// <summary>
    /// 将数据绑定到DataList控件
    /// </summary>
    public void DataListBind()
    {
        //将分页结果设置结果赋值给新的页数据源对象
        pds = operation.PageDataListBind(infoType, infoKey, Convert.ToInt32(lblCurrentPage.Text), 10);
        lnkBtnFirst.Enabled = true;      //控件翻页控件都设置为可用
        lnkBtnLast.Enabled = true;
        lnkBtnNext.Enabled = true;
        lnkBtnPrevious.Enabled = true;
        if (lblCurrentPage.Text == "1")   //如果当前显示第一页,“第一页”和“上一页”按钮不可用。
        {
            lnkBtnPrevious.Enabled = false;
            lnkBtnFirst.Enabled = false;
        }
        if (lblCurrentPage.Text == pds.PageCount.ToString())  //如果显示最后一页,“末一页”和“下一页”按钮不可用。
        {
            lnkBtnNext.Enabled = false;
            lnkBtnLast.Enabled = false;
        }
        lblSumPage.Text = pds.PageCount.ToString();  //实现总页数
        dlFree.DataSource = pds;            //绑定数据源
        dlFree.DataKeyField = "id";
        dlFree.DataBind();
    }


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值