Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
DisplayData()
End Sub
Public Property PageNumber() As Integer
Get
If ViewState("PageNumber") IsNot Nothing Then
Return Convert.ToInt32(ViewState("PageNumber"))
Else
Return 0
End If
End Get
Set(ByVal value As Integer)
ViewState("PageNumber") = value
End Set
End Property
Protected Overrides Sub OnInit(ByVal e As EventArgs)
MyBase.OnInit(e)
AddHandler repeaterPager.ItemCommand, AddressOf repeaterPager_ItemCommand
End Sub
Public Sub DisplayData()
Dim cmd As New SqlCommand("SELECT * FROM [tblOne]", New SqlConnection(ConfigurationManager.AppSettings("ConnString")))
cmd.Connection.Open()
Dim myReader As SqlDataReader = cmd.ExecuteReader()
Dim myTable As New DataTable()
myTable.Load(myReader)
Dim pgitems As New PagedDataSource()
Dim dv As New DataView(myTable)
pgitems.DataSource = dv
pgitems.AllowPaging = True
pgitems.PageSize = 5 ' Sets the number of records to display per page
pgitems.CurrentPageIndex = PageNumber
If pgitems.PageCount > 1 Then
repeaterPager.Visible = True
Dim pages As New ArrayList()
For i As Integer = 0 To pgitems.PageCount - 1
pages.Add((i + 1).ToString())
Next i
repeaterPager.DataSource = pages
repeaterPager.DataBind()
Else
repeaterPager.Visible = False
End If
Repeater1.DataSource = pgitems
Repeater1.DataBind()
cmd.Connection.Close()
cmd.Connection.Dispose()
End Sub
Private Sub repeaterPager_ItemCommand(ByVal source As Object, ByVal e As RepeaterCommandEventArgs)
PageNumber = Convert.ToInt32(e.CommandArgument) - 1
DisplayData()
End Sub
End Class