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


Top 5 Contributors of the Month
david stephan

Home >> Code Snippets >> ASP.NET Controls >> Post New Resource Bookmark and Share   

 Subscribe to Code Snippets

Paging in repeater using PagedDataSource class in vb

Posted By:satyapriyanayak       Posted Date: April 16, 2013    Points: 40    Category: ASP.NET Controls    URL: http://www.dotnetspark.com  

In this article we will know how to do Paging in repeater control. Drag and drop a repeater control, one label, and two buttons controls to the WebPages.
 

Program

Default.aspx code

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" 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"></asp:button>
             <asp:button id="btnNext" runat="server" text="Next" Width="60px"></asp:button></td>
      </tr>
   </table>
    </div>
    </form>
</body>
</html>


Default.aspx.vb code

Imports System.Data
Imports System.Data.SqlClient
Partial Class _Default
    Inherits System.Web.UI.Page

    Dim strConnString As String = System.Configuration.ConfigurationManager.ConnectionStrings.Item("ConnectionString").ToString()
    Dim con As New SqlConnection(strConnString)
    Dim str As String
    Dim com As SqlCommand
    Dim sqlda As SqlDataAdapter
    Dim ds As DataSet

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not IsPostBack Then
            bindrepeater()
        End If
    End Sub

    Private Sub bindrepeater()
        con.Open()
        str = "select * from employee"
        com = New SqlCommand(str, con)
        sqlda = New SqlDataAdapter(com)
        ds = New DataSet
        sqlda.Fill(ds, "employee")
        Dim Pds1 As 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 = Not Pds1.IsFirstPage
        btnNext.Enabled = Not Pds1.IsLastPage
        repeater1.DataSource = Pds1
        repeater1.DataBind()
        con.Close()
    End Sub
    Public Property CurrentPage() As Integer
        Get
            Dim s1 As Object = Me.ViewState("CurrentPage")
            If s1 Is Nothing Then
                Return 0
            Else
                Return CInt(s1)
            End If
        End Get

        Set(ByVal value As Integer)
            Me.ViewState("CurrentPage") = value
        End Set
    End Property
    Protected Sub btnPrevious_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnPrevious.Click
        CurrentPage -= 1
        bindrepeater()
    End Sub

    Protected Sub btnNext_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnNext.Click
        CurrentPage += 1
        bindrepeater()
    End Sub
End Class



     

Further Readings:

Responses

No response found. Be the first to respond this post

Post Comment

You must Sign In To post reply
Find More code samples in C#, ASP.Net, Vb.Net and more Here

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