1

リピーター コントロールでページャーを作成しようとしています。コンテンツはデータベースから取得されて表示されていますが、前のボタンと次のボタンをクリックしてもページが表示されません。つまり、同じコンテンツにとどまります。以下のコードからエラーを確認できる人はいますか? エラーや表示がないので、些細なことだと思いますが、見つけようとして頭を壁にぶつけています

マークアップ:

<asp:Repeater ID="ArtRepeater" runat="server">
<HeaderTemplate>
    <h2>Items in Selected Category:</h2>
</HeaderTemplate>  
<ItemTemplate>
    <li>
        <asp:HyperLink runat="server" ID="HyperLink"
            NavigateUrl='<%# Eval("MovieID", "Default2.aspx?ArtID={0}")%>'>
            <%# DataBinder.Eval(Container.DataItem, "MovieTitle")%>
        </asp:HyperLink>
    </li>
</ItemTemplate>

コードビハインド:

Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
    doPaging()
End Sub

Function getTheData() As DataTable
        Dim DS As New DataSet()
        Dim strConnect As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source = " & _
        Server.MapPath("/App_Data/MovieBoard.accdb"))
        Dim objOleDBAdapter As New OleDbDataAdapter("SELECT MovieID, MovieTitle FROM Movies", strConnect)
        objOleDBAdapter.Fill(DS, "Movies")

        Return DS.Tables("Movies").Copy
    End Function

    Sub doPaging()
        pagedData.DataSource = getTheData().DefaultView
        pagedData.AllowPaging = True
        pagedData.PageSize = 1

        Try
            pagedData.CurrentPageIndex = Int32.Parse(Request.QueryString("Page")).ToString()
        Catch ex As Exception
            pagedData.CurrentPageIndex = 0
        End Try

        btnPrev.Visible = (pagedData.IsFirstPage)
        btnNext.Visible = (Not pagedData.IsLastPage)

        pageNumber.Text = (pagedData.CurrentPageIndex + 1) & " of " & pagedData.PageCount

        ArtRepeater.DataSource = pagedData
        ArtRepeater.DataBind()
    End Sub
4

1 に答える 1