SortablePaginationRepeater Demo

This demo illustrates how to use the SortablePaginationRepeater control to create a pageable, sortable Repeater.


Attempting to test the Custom Web Controls.

Page 1 of 10

Reference Member Id Date Received
1 100002 8/2/2010
2 100004 1/14/2011
3 100006 7/21/2010
4 100008 10/9/2010
5 100005 2/14/2010
6 100007 3/10/2010
7 100009 7/30/2010
8 100011 2/12/2010
9 100013 12/26/2009
10 100010 11/8/2010

Page 1 of 10


Source Code

<%@ Register TagPrefix="CustomWebControls" Namespace="CustomWebControls" Assembly="CustomWebControls" %>
<%@ Import Namespace="System.Data" %>

<script language="VB" runat="server">
    Public Sub Page_Load(sender As Object, ByVal e As EventArgs)
        Dim i As Integer
        Dim NewRow As DataRow
        Dim Randomizer As New System.Random

        Dim Responses as DataTable = New DataTable("Responses")

        Responses.Columns.Add(New DataColumn("Id", GetType(Integer)))
        Responses.Columns.Add(New DataColumn("DateSubmitted", GetType(Date)))
        Responses.Columns.Add(New DataColumn("WebUserId", GetType(Integer)))

        For i = 1 To 100
            NewRow = Responses.NewRow()
            With NewRow
                .Item("Id") = i
                .Item("DateSubmitted") = Now.AddDays(Randomizer.Next(-365, 365))
                .Item("WebUserId") = 100000 + i + i Mod 5
            End With
            Responses.Rows.Add(NewRow)
        Next

        If Not Responses Is Nothing Then
            Dim DSet As New DataSet("Test")
            DSet.Tables.Add(Responses)
            SpecialList.DataSource = DSet
            SpecialList.DataBind()
        End If
    End Sub


	Protected Sub BindData(ByVal sender As Object, ByVal e As RepeaterItemEventArgs)
        Dim RefNum, MemberId, DateReceived As Label
        Dim row As DataRowView

        If e.Item.ItemType = ListItemType.AlternatingItem OrElse e.Item.ItemType = ListItemType.Item Then

            With e.Item
                RefNum = .FindControl("RefNum")
                MemberId = .FindControl("MemberId")
                DateReceived = .FindControl("DateReceived")
            End With

            row = CType(e.Item.DataItem, DataRowView)
            RefNum.Text = row("Id")
            MemberId.Text = row("WebUserId")
            DateReceived.Text = String.Format("{0:d}", row("DateSubmitted"))

        End If

    End Sub
</script>

<form id="Form1" method="post" runat="server">
	<p>Attempting to test the Custom Web Controls.</p>
	<CustomWebControls:SortablePaginationRepeater id="SpecialList" runat="server" PageSize="10" PageButtonCount="5" PageLocation="TopAndBottom"
		TableWidth="100%" PagerStyle="TextBox" GoButtonCssClass="Link" OnItemDataBound="BindData">
		<SORTCOLUMN DisplayName="Reference" ColumnName="Id" />
		<SORTCOLUMN DisplayName="Member Id" ColumnName="WebUserId" />
		<SORTCOLUMN DisplayName="Date Received" ColumnName="DateSubmitted" />
		<HEADERTEMPLATE>
			<hr />
			<TABLE width="100%">
				<TBODY>
					<TR>
						<TH>
							Reference</TH>
						<TH>
							Member Id</TH>
						<TH>
							Date Received</TH></TR>
		</HEADERTEMPLATE>
		<ITEMTEMPLATE>
			<TR>
				<TD align="center">
					<asp:Label id="RefNum" runat="server"></asp:Label></TD>
				<TD>
					<asp:Label id="MemberId" runat="server"></asp:Label></TD>
				<TD align="right">
					<asp:Label id="DateReceived" runat="server"></asp:Label></TD>
			</TR>
		</ITEMTEMPLATE>
		<FOOTERTEMPLATE></TBODY></TABLE><hr /></FOOTERTEMPLATE>
	</CustomWebControls:SortablePaginationRepeater>
</form>


[Return to the article...]