ASP.NET DataList绑定数据并实现分页

时间:2023-03-08 17:33:11
显示当前页码
Label
属性 值
ID NowPageNumberLab
text    1
×××××××××××××××××××××
显示总页码
Label
属性 值
ID BackPageNumberLab
text    ""
××××××××××××××××××××
LinkButton
属性  值
ID  LnkBtnOne
text  第一页 
×××××××××××××××××××××
LinkButton
属性  值
ID  LnkBtnUp
text  上一页
×××××××××××××××××××××
LinkButton
属性  值
ID  LnkBtnNext
text  下一页
×××××××××××××××××××××
LinkButton
属性  值
ID  LnkBtnBack
text  最后一页
<%# Eval("NBID") %> <%# Eval("ADID") %> <%# Eval("NBName") %> <%# Eval("NBAdr") %> <%# Eval("NBTel") %> <%# Eval("NBNumber") %> <%# Eval("NBYears") %> <%# Eval("UserName") %> <%# Eval("Password") %>    

当前页码:[]
总页码:[]
第一页
asp:LinkButton ID="LnkBtnUp" runat="server" OnClick="LnkBtnUp_Click">上一页
下一页
最后一页
protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            Pagination();
        }
    }
    ///
    /// 分页
    ///
    public void Pagination()
    {
        NBClass nb = new NBClass();
        PagedDataSource ps = new PagedDataSource();
        int curpage=Convert.ToInt32(NowPageNumberLab.Text);
        NetDSet.NB_IntroduceDataTable table = nb.GetNBTable();
        ps.DataSource =table.DefaultView;
        ps.AllowPaging = true;//是否可以分页
        ps.PageSize = 2;//每页显示数量
        ps.CurrentPageIndex = curpage - 1;//获取当前页码
        LnkBtnOne.Enabled = true;
        LnkBtnUp.Enabled = true;
        LnkBtnNext.Enabled = true;
        LnkBtnBack.Enabled = true;
        if (ps.IsFirstPage)//如果是第一页
        {
            LnkBtnOne.Enabled = false;//不显示第一页按钮
            LnkBtnUp.Enabled = false;//不显示上一页按钮
        }
        if (ps.IsLastPage)//如果是最后一页
        {
            LnkBtnNext.Enabled = false;//不显示下一页按钮
            LnkBtnBack.Enabled = false;//不显示最后一页按钮
        }
        BackPageNumberLab.Text = Convert.ToString(ps.PageCount);//获得总页码
        DataList1.DataSource =ps;//DataList绑定数据源
        DataList1.DataBind();//绑定    
    }
    ///
    /// 点击第一页
    ///
    /// 
    /// 
    protected void LnkBtnOne_Click(object sender, EventArgs e)
    {
        NowPageNumberLab.Text = "1";
        Pagination();
    }
    ///
    /// 点击下一页
    ///
    /// 
    /// 
    protected void LnkBtnUp_Click(object sender, EventArgs e)
    {
        NowPageNumberLab.Text=Convert.ToString(Convert.ToUInt32(NowPageNumberLab.Text)-1);
        Pagination();
    }
    ///
    /// 点击上一页
    ///
    /// 
    /// 
    protected void LnkBtnNext_Click(object sender, EventArgs e)
    {
        NowPageNumberLab.Text = Convert.ToString(Convert.ToInt32(NowPageNumberLab.Text) + 1);
        Pagination();
    }
    ///
    /// 点击最后一页
    ///
    /// 
    /// 
    protected void LnkBtnBack_Click(object sender, EventArgs e)
    {
        NowPageNumberLab.Text = BackPageNumberLab.Text;
        Pagination();
    }