各位大侠: 小弟用datalist绑定数据,用PagedDataSource做的分页,现在想实现更改显示记录条数,比如一个下拉菜单,有每页显示20条、50条、100条,选择相应数据即可实现更改。请问大侠们有什么好的方法没有。以下是源码 Sub GetData(ByVal cmdString As String) Dim conn As SqlConnection
Dim myDataAdpter As SqlDataAdapter
Dim myDataSet As DataSet conn = New SqlConnection(ConfigurationManager.ConnectionStrings("Shenzhou").ConnectionString)
myDataAdpter = New SqlDataAdapter(cmdString, conn)
conn.Open()
myDataSet = New DataSet
myDataAdpter.Fill(myDataSet, "equipment") Dim Ps As PagedDataSource
Dim PageNum As Integer '页码
Dim PageCount As Integer '总页数
Dim RecordCount As Integer '总记录数
Dim EquipmentType As String
EquipmentType = Request("EquipmentType") If myDataSet.Tables("equipment").Rows.Count = 0 Then Label2.Text = "无相关数据!"
Else
Label2.Text = ""
End If '分页开始 Ps = New PagedDataSource '实例化分页对象
Ps.DataSource = myDataSet.Tables("equipment").DefaultView '将数据填入分页
Ps.PageSize = 15 '每页显示记录数
Ps.AllowPaging = True '设置允许分页
PageNum = CInt(Request.QueryString("Pagenum")) '获取页码值
PageCount = Ps.PageCount '总页数
RecordCount = Ps.DataSourceCount '总记录数 If PageNum = 0 Then PageNum = 1 End If If PageNum > PageCount Then PageNum = PageCount End If Ps.CurrentPageIndex = PageNum - 1
TextBox1.Text = PageNum
HiddenField1.Value = PageCount Label3.Text = "共<span class='red'> " & RecordCount & "</span> 条记录 共 <span class='red'>" & PageCount & "</span> 页 当前第 <span class='red'>" & PageNum & "</span> 页" If PageCount = 1 Then '当只有一页时,都没有链接 Label4.Text = "<<首页 上一页 下一页 尾页>>" ElseIf PageCount > 1 Then '当大于一页时 If PageNum = PageCount Then '如果当前页等于总页数,则下一页没有链接 Label4.Text = "<a href=?&PageNum=1><<首页</a> <a href=?&PageNum=" & PageNum - 1 & ">上一页</a> 下一页 <a href=?&PageNum=" & PageCount & ">尾页>></a>" ElseIf PageNum = 1 Then '如果当前页等于1,则上一页没有链接 Label4.Text = "<a href=?&PageNum=1><<首页</a> 上一页 <a href=?&PageNum=" & PageNum + 1 & ">下一页</a> <a href=?&PageNum=" & PageCount & ">尾页>></a>" Else '否则都有链接 Label4.Text = "<a href=?&PageNum=1><<首页</a> <a href=?&PageNum=" & PageNum - 1 & ">上一页</a> <a href=?&PageNum=" & PageNum + 1 & ">下一页</a> <a href=?&PageNum=" & PageCount & ">尾页>></a>"
End If
End If DataList1.DataSource = Ps
DataList1.DataBind()
End Sub
Dim myDataAdpter As SqlDataAdapter
Dim myDataSet As DataSet conn = New SqlConnection(ConfigurationManager.ConnectionStrings("Shenzhou").ConnectionString)
myDataAdpter = New SqlDataAdapter(cmdString, conn)
conn.Open()
myDataSet = New DataSet
myDataAdpter.Fill(myDataSet, "equipment") Dim Ps As PagedDataSource
Dim PageNum As Integer '页码
Dim PageCount As Integer '总页数
Dim RecordCount As Integer '总记录数
Dim EquipmentType As String
EquipmentType = Request("EquipmentType") If myDataSet.Tables("equipment").Rows.Count = 0 Then Label2.Text = "无相关数据!"
Else
Label2.Text = ""
End If '分页开始 Ps = New PagedDataSource '实例化分页对象
Ps.DataSource = myDataSet.Tables("equipment").DefaultView '将数据填入分页
Ps.PageSize = 15 '每页显示记录数
Ps.AllowPaging = True '设置允许分页
PageNum = CInt(Request.QueryString("Pagenum")) '获取页码值
PageCount = Ps.PageCount '总页数
RecordCount = Ps.DataSourceCount '总记录数 If PageNum = 0 Then PageNum = 1 End If If PageNum > PageCount Then PageNum = PageCount End If Ps.CurrentPageIndex = PageNum - 1
TextBox1.Text = PageNum
HiddenField1.Value = PageCount Label3.Text = "共<span class='red'> " & RecordCount & "</span> 条记录 共 <span class='red'>" & PageCount & "</span> 页 当前第 <span class='red'>" & PageNum & "</span> 页" If PageCount = 1 Then '当只有一页时,都没有链接 Label4.Text = "<<首页 上一页 下一页 尾页>>" ElseIf PageCount > 1 Then '当大于一页时 If PageNum = PageCount Then '如果当前页等于总页数,则下一页没有链接 Label4.Text = "<a href=?&PageNum=1><<首页</a> <a href=?&PageNum=" & PageNum - 1 & ">上一页</a> 下一页 <a href=?&PageNum=" & PageCount & ">尾页>></a>" ElseIf PageNum = 1 Then '如果当前页等于1,则上一页没有链接 Label4.Text = "<a href=?&PageNum=1><<首页</a> 上一页 <a href=?&PageNum=" & PageNum + 1 & ">下一页</a> <a href=?&PageNum=" & PageCount & ">尾页>></a>" Else '否则都有链接 Label4.Text = "<a href=?&PageNum=1><<首页</a> <a href=?&PageNum=" & PageNum - 1 & ">上一页</a> <a href=?&PageNum=" & PageNum + 1 & ">下一页</a> <a href=?&PageNum=" & PageCount & ">尾页>></a>"
End If
End If DataList1.DataSource = Ps
DataList1.DataBind()
End Sub
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货