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>
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。