TECHNOLOGIES
FORUMS
JOBS
BOOKS
EVENTS
INTERVIEWS
Live
MORE
LEARN
Training
CAREER
MEMBERS
VIDEOS
NEWS
BLOGS
Sign Up
Login
No unread comment.
View All Comments
No unread message.
View All Messages
No unread notification.
View All Notifications
C# Corner
Post
An Article
A Blog
A News
A Video
An EBook
An Interview Question
Ask Question
Paging in repeater using PagedDataSource class
Satyapriya Nayak
Sep 12, 2011
22.1
k
0
2
facebook
twitter
linkedIn
Reddit
WhatsApp
Email
Bookmark
In this article we will know how to do Paging in repeater using PagedDataSource class.
Paging.rar
Drag and drop a Repeater control, one label, and two buttons controls to the WebPages.
Table structure
Program
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
:
repeater
id
="repeater1"
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
:
repeater
>
</
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)
{
bindrepeater();
}
}
private
void
bindrepeater()
{
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;
repeater1.DataSource = Pds1;
repeater1.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;
bindrepeater();
}
protected
void
btnNext_Click(
object
sender,
EventArgs
e)
{
CurrentPage += 1;
bindrepeater();
}
}
Output
Thanks for reading
Paging in repeater using PagedDataSource class
Next Recommended Reading
How To Bind Repeater Control Using Array, Arraylist, And Generic List Assortment In ASP.NET