protected void Page_Load(object sender, EventArgs e) { if (!this.IsPostBack) CurrentPage = 0; BindPagedDataSource(); }
private void BindPagedDataSource() { DataSourceSelectArguments arg = new DataSourceSelectArguments(); DataView dv = (DataView)this.sdsOrderDetails.Select(arg); PagedDataSource objPds = new PagedDataSource(); objPds.DataSource = dv; objPds.AllowPaging = true; objPds.PageSize = 5; objPds.CurrentPageIndex = CurrentPage;
lblCurrentPage.Text = "Page " + (CurrentPage + 1).ToString() + " of " + objPds.PageCount.ToString();
//Enable/Disable Prev and Next buttons btnPrev.Enabled = !objPds.IsFirstPage; btnNext.Enabled = !objPds.IsLastPage;
rptOrderDetails.DataSource = objPds; rptOrderDetails.DataBind(); if (objPds.PageCount > 1) { pnlNavigation.Visible = true; } }
public void btnNext_Click(object sender, System.EventArgs e) { // Set viewstate variable to the next page CurrentPage += 1;
// Reload control BindPagedDataSource(); }
public void btnPrev_Click(object sender, System.EventArgs e) { // Set viewstate variable to the previous page if (CurrentPage > 0) CurrentPage -= 1; else CurrentPage = 1;
<asp:Panel ID="pnlNavigation" runat="server" Visible="false"> <asp:Button ID="btnPrev" runat="server" Text=" << " OnClick="btnPrev_Click" Height="18px"></asp:Button> <asp:Label ID="lblCurrentPage" runat="server"></asp:Label> <asp:Button ID="btnNext" runat="server" Text=" >> " OnClick="btnNext_Click" Height="18px"> </asp:Button> </asp:Panel>