Asp.net 如何在Datalist控件中进行分页?

Asp.net 如何在Datalist控件中进行分页?,asp.net,vb.net,paging,datalist,Asp.net,Vb.net,Paging,Datalist,我在ASP.NET 3.5 Access 2003数据源中有我的数据列表。我想使用VB为数据列表控件创建分页。 DataList缺少像GridView中那样的分页功能,但是可以为DataList实现分页功能。 在这里,我使用PagedDataSource完成了分页,它包含了数据绑定控件的分页相关属性,允许它执行分页。更多关于 内联代码 <div> <asp:DataList ID="dataListStudent" runat="server">

我在ASP.NET 3.5 Access 2003数据源中有我的数据列表。我想使用VB为
数据列表
控件创建分页。

DataList缺少像
GridView
中那样的分页功能,但是可以为
DataList
实现分页功能。 在这里,我使用
PagedDataSource
完成了分页,它包含了数据绑定控件的分页相关属性,允许它执行分页。更多关于

内联代码

   <div>
        <asp:DataList ID="dataListStudent" runat="server">
            <ItemTemplate>
                <table cellpadding="10">
                    <tr>
                        <td nowrap="nowrap">
                            <b>Student id</b>
                        </td>
                        <td nowrap="nowrap">
                            <b>First name</b>
                        </td>
                        <td nowrap="nowrap">
                            <b>Last name</b>
                        </td>
                        <td>
                            <b>City</b>
                        </td>
                    </tr>
                    <hr />
                    <tr>
                        <td nowrap="nowrap">
                            <%# Eval("StudentID") %>
                        </td>
                        <td nowrap="nowrap">
                            <%# Eval("FirstName") %>
                        </td>
                        <td nowrap="nowrap">
                            <%# Eval("LastName") %>
                        </td>
                        <td nowrap="nowrap">
                            <%# Eval("City") %>
                        </td>
                    </tr>
                </table>
            </ItemTemplate>
        </asp:DataList>
        <br />
        <table border="0" width="410">
            <tr>
                <td align="left">
                    <asp:LinkButton ID="lbPrev" runat="server">
Prev
                    </asp:LinkButton>
                </td>
                <td align="right">
                    <asp:LinkButton ID="lbNext" runat="server">
Next
                    </asp:LinkButton>
                </td>
            </tr>
        </table>
    </div>
您的连接字符串、列名可能不同您可能需要不同的DataList布局请随意处理希望它能帮助您解决问题。

检查此示例
Imports System.Data
Imports System.Data.OleDb

Partial Class _Default
    Inherits System.Web.UI.Page
    Dim pageds As New PagedDataSource()

    Public Property CurrentPage() As Integer

        Get
            If Me.ViewState("CurrentPage") Is Nothing Then
                Return 0
            Else
                Return Convert.ToInt16(Me.ViewState("CurrentPage").ToString())
            End If
        End Get

        Set(ByVal value As Integer)
            Me.ViewState("CurrentPage") = value
        End Set
    End Property
    Sub bindDataList()
        Dim sql As String
        sql = "SELECT * FROM STUDENTS"
        Dim da As New OleDbDataAdapter(sql, "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\Course.mdb")
        Dim dt = New DataTable()
        da.Fill(dt)
        Try
            pageds.DataSource = dt.DefaultView
            pageds.AllowPaging = True
            pageds.PageSize = 3
            pageds.CurrentPageIndex = CurrentPage
            lbNext.Enabled = Not pageds.IsLastPage
            lbPrev.Enabled = Not pageds.IsFirstPage
            dataListStudent.DataSource = pageds
            dataListStudent.DataBind()
        Catch ex As Exception
            Throw ex
        End Try
    End Sub
    Protected Sub lbPrev_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles lbPrev.Click
        currentPage -= 1
        bindDataList()
    End Sub
    Protected Sub lbNext_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles lbNext.Click
        currentPage += 1
        bindDataList()

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

        End If
    End Sub
End Class