zoukankan      html  css  js  c++  java
  • DataList 分页

    HTML 部分:
    
    <TABLE id="Table2" cellSpacing="1" cellPadding="1" width="540" border="0">
    <TR>
    <TD align="right">共<asp:label id="lblRecordCount" runat="server">Label</asp:label>条记录  
    共<asp:label id="lblPageCount" runat="server">Label</asp:label>页 当前第<asp:label id="lblCurrentPage" runat="server">Label</asp:label><asp:linkbutton id="lbnFirstPage" runat="server" CommandName="first" OnCommand="Page_OnClick">首页</asp:linkbutton> 
    <asp:linkbutton id="lbnPrevPage" CommandName="prev" OnCommand="Page_OnClick" Runat="server">上一页</asp:linkbutton>  
    <asp:linkbutton id="lbnNextPage" runat="server" CommandName="next" OnCommand="Page_OnClick">下一页</asp:linkbutton> 
    <asp:linkbutton id="lbnLastPage" runat="server" CommandName="last" OnCommand="Page_OnClick">尾页</asp:linkbutton></TD>
    </TR>
    </TABLE>
    Asp.Net DataList 分页的完整代码
    
    
    
    .cs 代码
    
    private void Page_Load(object sender, System.EventArgs e)
    {
    // 在此处放置用户代码以初始化页面
    PageSize = 10;
    sql="select * from products order by all_time desc ";
    if(!Page.IsPostBack)
    {
    //计算总共有多少记录 
    RecordCount = CalculateRecord(); 
    //计算总共有多少页
    //取整 
    PageCount = RecordCount/PageSize; 
    if (RecordCount%PageSize > 0) 
    PageCount = PageCount + 1; 
    lblPageCount.Text = PageCount.ToString(); 
    lblRecordCount.Text = RecordCount.ToString(); 
    ViewState["PageCount"] = PageCount; 
    CurrentPage = 0; 
    ViewState["PageIndex"] = 0; 
    //绑定 
    ListBind();
    
    }
    }
    public int CalculateRecord() 
    { 
    int intCount; 
    string strCount = "select count(*) as co from products"; 
    SqlConnection Con=new SqlConnection(data.constr);
    SqlCommand addCommand=new SqlCommand(strCount,Con);
    addCommand.Connection.Open();
    SqlDataReader dr;
    dr=addCommand.ExecuteReader();
    if(dr.Read()) 
    { 
    intCount = Int32.Parse(dr["co"].ToString()); 
    } 
    else 
    { 
    intCount = 0; 
    } 
    dr.Close(); 
    return intCount; 
    }
    
    ICollection CreateSource() 
    {
    
    int StartIndex; 
    //设定导入的起终地址 
    StartIndex = CurrentPage*PageSize; 
    string strSel = "select * from products"; 
    SqlConnection Con=new SqlConnection(data.constr);
    DataSet ds = new DataSet(); 
    SqlDataAdapter MyAdapter = new SqlDataAdapter(strSel,Con); 
    MyAdapter.Fill(ds,StartIndex,PageSize,"products"); 
    return ds.Tables["products"].DefaultView; 
    } 
    public void ListBind() 
    { 
    dl1.DataSource = CreateSource(); 
    dl1.DataBind(); 
    lbnNextPage.Enabled = true; 
    lbnPrevPage.Enabled = true; 
    if(PageCount==0) 
    { 
    lblCurrentPage.Text = "0"; 
    lbnNextPage.Enabled = false; 
    lbnPrevPage.Enabled = false; 
    } 
    else 
    { 
    if(CurrentPage==(PageCount-1)) lbnNextPage.Enabled = false; 
    if(CurrentPage==0) lbnPrevPage.Enabled = false; 
    lblCurrentPage.Text = (CurrentPage+1).ToString(); 
    } 
    } 
    public void Page_OnClick(Object sender,CommandEventArgs e) 
    { 
    CurrentPage = (int)ViewState["PageIndex"]; 
    PageCount = (int)ViewState["PageCount"]; 
    string cmd = e.CommandName; 
    //判断cmd,以判定翻页方向 
    switch(cmd) 
    { 
    case "next": 
    if(CurrentPage<(PageCount-1)) CurrentPage++; 
    break; 
    case "prev": 
    if(CurrentPage>0) CurrentPage--; 
    break;
    case "first":
    CurrentPage=0;
    break;
    case "last":
    CurrentPage=PageCount-1;
    break;
    }
    
    ViewState["PageIndex"] = CurrentPage;
    
    ListBind();
    
    }
  • 相关阅读:
    Rust 变量
    Rust-lang(hello world 续)
    Rust-lang(hello world)
    Java 1.8 ASM ClassReader failed to parse class file
    Sqoop使用笔记
    Jstorm
    从flume到kafka,日志收集
    vim-3-插件管理
    vim-2-使用进阶
    Git-Repo-Gerrit-1-Git介绍,安装和配置
  • 原文地址:https://www.cnblogs.com/a1235202005/p/2671894.html
Copyright © 2011-2022 走看看