• Asp.net PageDataSource为DataList分页


    注:封装数据绑定控件(如 System.Web.UI.WebControls.DataGrid、System.Web.UI.WebControls.GridView、System.Web.UI.WebControls.DetailsView
        //     和 System.Web.UI.WebControls.FormView)的与分页相关的属性,以允许该控件执行分页操作。无法继承此类。
    DataList
    public DataTable GetDataSet(string sql)
        {
            SqlConnection conn = this.getconn();
            SqlDataAdapter sdr = new SqlDataAdapter(sql, conn);
            DataSet rs = new DataSet();
            sdr.Fill(rs);
            return rs.Tables[0];
        }
        public PagedDataSource PageDataListBind(string sql, int currentPage, int PageSize)
        {
            PagedDataSource pds = new PagedDataSource();
            pds.DataSource = GetDataSet(sql).DefaultView;
            pds.AllowPaging = true;
            pds.PageSize = PageSize;
            pds.CurrentPageIndex = currentPage - 1;
            return pds;
        }
     
     
    DB db = new DB();
        PagedDataSource pds = new PagedDataSource();
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
               
                bind();
            }
        }
    
        public void bind()
        {
            pds = db.PageDataListBind("select * from tb_word",Convert.ToInt32(lblCurrentPage.Text),2);   
            lnkBtnFirst.Enabled = true;
            lnkBtnLast.Enabled = true;
            lnkBtnPrevious.Enabled = true;
            lnkBtnNext.Enabled = true;
            if (lblCurrentPage.Text == "1")
            {
                lnkBtnFirst.Enabled = false;
                lnkBtnPrevious.Enabled = false;
            }
            if(lblCurrentPage.Text==pds.PageCount.ToString())
            {
                lnkBtnLast.Enabled = false;
                lnkBtnNext.Enabled = false;
            }
            lblSumPage.Text = pds.PageCount.ToString();
            DataList1.DataSource = pds;
            DataList1.DataKeyField = "ID";
            DataList1.DataBind();
        }
       
        protected void lnkBtnFirst_Click(object sender, EventArgs e)
        {
            lblCurrentPage.Text = "1";
            bind();
        }
        protected void lnkBtnPrevious_Click(object sender, EventArgs e)
        {
            lblCurrentPage.Text = (Convert.ToInt32(lblCurrentPage.Text) - 1).ToString();
            bind();
        }
        protected void lnkBtnNext_Click(object sender, EventArgs e)
        {
            lblCurrentPage.Text = (Convert.ToInt32(lblCurrentPage.Text) + 1).ToString();
            bind();
        }
        protected void lnkBtnLast_Click(object sender, EventArgs e)
        {
            lblCurrentPage.Text = lblSumPage.Text;
            bind();
        }
     
    <form id="form1" runat="server">
        <div>
            <asp:DataList ID="DataList1" runat="server">
            <ItemTemplate>
                <table border="1">
                    <tr>
                        <td>ID</td><td>标题</td><td>内容</td>
                    </tr>
                    <tr>
                        <td><%#Eval("ID") %></td>
                        <td><%#Eval("Title") %></td>
                        <td><%#Eval("Content") %></td>
                    </tr>
                </table>
            </ItemTemplate>
            </asp:DataList>
            当前页码为[<asp:Label ID="lblCurrentPage" runat="server" Text="1"></asp:Label>]页
                    总页码[<asp:Label
                        ID="lblSumPage" runat="server" Text="0"></asp:Label>]页
                    <asp:LinkButton ID="lnkBtnFirst" runat="server" Font-Underline="False" OnClick="lnkBtnFirst_Click" > 第一页 </asp:LinkButton>
                    <asp:LinkButton ID="lnkBtnPrevious" runat="server" Font-Underline="False" OnClick="lnkBtnPrevious_Click" > 上一页 </asp:LinkButton>
                    <asp:LinkButton ID="lnkBtnNext" runat="server" Font-Underline="False" OnClick="lnkBtnNext_Click" > 下一页 </asp:LinkButton>
                    <asp:LinkButton ID="lnkBtnLast" runat="server" Font-Underline="False" OnClick="lnkBtnLast_Click"> 末一页 </asp:LinkButton>
        </div>
        </form>

    转载自:http://blog.sina.com.cn/s/blog_83a4857e01011tyw.html

  • 相关阅读:
    监听
    用户管理
    oracle网络
    实例 参数
    存储管理
    oracle 体系
    实例
    修改
    集合操作
    17.08.18
  • 原文地址:https://www.cnblogs.com/happylyyer/p/4466443.html
Copyright © 2020-2023  润新知