.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
 
Sign In
Register
 
Win Surprise Gifts!!!
Congratulations!!!


Top 5 Contributors of the Month
david stephan

Post New Resource Bookmark and Share   

Paging in datalist using PagedDataSource class

Posted By:satyapriyanayak       Posted Date: May 01, 2013    Points: 40    Category:    URL: http://www.dotnetspark.com  

Here we will know how to do Paging in datalist using PagedDataSource class.
 

Default.aspx code

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <table border="1">
     <asp:DataList ID="dl1" runat="server">
   
      <HeaderTemplate>
      <font color="red"><b>Employee Details</b></font>
     
      </HeaderTemplate>
         <itemtemplate>
         <tr>
         <td><font color="Green"><b>ID</b></font></td>
         <td><font color="Green"><b>NAME</b></font></td>
         <td><font color="Green"><b>SALARY</b></font></td>
         <td><font color="Green"><b>ADDRESS</b></font></td>
         <td><font color="Green"><b>DESIGNATION</b></font></td>
         </tr>
            <tr>
               <td>  <font color="#ff8000"><b><%#Eval("empid")%></b></font></td>
               <td>  <font color="Fuchsia"><b><%#Eval("empname")%></b></font></td>
               <td>  <font color="#663300"><b><%#Eval("empsal")%></b></font></td>
               <td>  <font color="Purple"><b><%#Eval("empadd")%></b></font></td>
               <td>  <font color="#808040"><b><%#Eval("empdes")%></b></font></td>
            </tr>
         </itemtemplate>
  
      </asp:DataList>
   </table>
   <table width="100%" border="0">
      <tr>
         <td>  <asp:label id="lbl1" runat="server" BackColor="Yellow" BorderColor="Yellow"
                 Font-Bold="True" ForeColor="#FF3300"></asp:label></td>
      </tr>
      <tr>
       <td>  <asp:button id="btnPrevious" runat="server" text="Previous" Width="60px"
               onclick="btnPrevious_Click"></asp:button>
             <asp:button id="btnNext" runat="server" text="Next" Width="60px"
               onclick="btnNext_Click"></asp:button></td>
      </tr>
   </table>
    </div>
    </form>
</body>
</html>

Default.aspx.cs code

using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
public partial class _Default : System.Web.UI.Page
{
    string strConnString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
    string str ;
    SqlCommand com;
    SqlDataAdapter sqlda;
    DataSet ds;
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            binddatalist();
        }
    }
    private void binddatalist()
    {
        SqlConnection con = new SqlConnection(strConnString);
        con.Open();
        str = "select * from employee";
        com = new SqlCommand(str, con);
        sqlda = new SqlDataAdapter(com);
        ds = new DataSet();
        sqlda.Fill(ds, "employee");
        PagedDataSource Pds1 = new PagedDataSource();
        Pds1.DataSource = ds.Tables[0].DefaultView;
        Pds1.AllowPaging = true;
        Pds1.PageSize = 3;
        Pds1.CurrentPageIndex = CurrentPage;
        lbl1.Text = "Showing Page: " + (CurrentPage + 1).ToString() + " of " + Pds1.PageCount.ToString();
        btnPrevious.Enabled = !Pds1.IsFirstPage;
        btnNext.Enabled = !Pds1.IsLastPage;
        dl1.DataSource = Pds1;
        dl1.DataBind();
        con.Close();
    }
    public int CurrentPage
    {
        get
        {
            object s1 = this.ViewState["CurrentPage"];
            if (s1 == null)
            {
                return 0;
            }
            else
            {
                return Convert.ToInt32(s1);
            }
        }

        set { this.ViewState["CurrentPage"] = value; }
    }

    protected void btnPrevious_Click(object sender, EventArgs e)
    {
        CurrentPage -= 1;
        binddatalist();

    }
    protected void btnNext_Click(object sender, EventArgs e)
    {
        CurrentPage += 1;
        binddatalist();

    }
}



     

Further Readings:

Responses

No response found. Be the first to respond this post

Post Comment

You must Sign In To post reply
Here

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend