




















在用GridView里自带的分功能的时候,出现在一个有点奇怪的问题,点下面的页码,会执行上面按钮扭执行的动作,所以就用了一个自定义分页的功能。现将功能描述如下:
aspx页代码:
aspx.vb代码:
Imports System.Data
Imports System.Data.SqlClient
Partial Class more_newproducts
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
GridViewBind()
End Sub
Protected Sub PagerButtonClick(ByVal sender As Object, ByVal e As EventArgs)
Dim arg As String = (CType(sender, LinkButton)).CommandArgument.ToString()
Select Case arg
Case "prev"
If (GridView1.PageIndex > 0) Then
GridView1.PageIndex -= 1
End If
Case "next"
If (GridView1.PageIndex < (GridView1.PageCount - 1)) Then
GridView1.PageIndex += 1
End If
Case "last"
GridView1.PageIndex = (GridView1.PageCount - 1)
Case "first"
GridView1.PageIndex = 0
End Select
GridViewBind()
End Sub
Private Sub GridViewBind()
Dim conn As New SqlConnection
conn.ConnectionString = Application("conn")
conn.Open()
Dim sql As String = "SELECT [productid], [productname], [pifajia], [price], [s_imgurl], [pinpai], [changdi] FROM [products] ORDER BY [fabushijian] DESC"
Dim dt As DataSet = New DataSet
Dim da As SqlDataAdapter = New SqlDataAdapter(sql, conn)
da.Fill(dt)
GridView1.DataSource = dt.Tables(0).DefaultView
GridView1.DataBind()
LblCurrentIndex.Text = "第<font color='red'>" + (GridView1.PageIndex + 1).ToString() + "</font> 页"
LblPageCount.Text = "共<font color='red'> " + GridView1.PageCount.ToString() + "</font> 页"
LblRecordCount.Text = "总共<font color='red'> " + dt.Tables(0).Rows.Count.ToString() + "</font> 条"
If (dt.Tables(0).Rows.Count = 0) Then
btnFirst.Visible = False
btnPrev.Visible = False
btnNext.Visible = False
btnLast.Visible = False
LblCurrentIndex.Visible = False
LblPageCount.Visible = False
LblRecordCount.Visible = False
LblNoRecord.Visible = True
ElseIf (GridView1.PageCount = 1) Then
btnFirst.Visible = False
btnPrev.Visible = False
btnNext.Visible = False
btnLast.Visible = False
End If
End Sub
End Class
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。