trWhere = Value End Set End Property ''''set or get sql orderby Public Property fldOrderby() As String Get Return strfldOrderby End Get Set(ByVal Value As String) strfldOrderby = Value End Set End Property Public Function GetPageCount() As Integer Call ConnectionDatabase() Dim RountCommand As SqlDataAdapter RountCommand = New SqlDataAdapter("CountRow", myConn) RountCommand.SelectCommand.CommandType = CommandType.StoredProcedure RountCommand.SelectCommand.Parameters.Add(New SqlParameter("@strTableName", SqlDbType.NVarChar, 50)) RountCommand.SelectCommand.Parameters("@strTableName").Value = strTableName RountCommand.SelectCommand.Parameters.Add(New SqlParameter("@fldNameCount", SqlDbType.NVarChar, 50)) RountCommand.SelectCommand.Parameters("@fldNameCount").Value = strfldNameCount Dim intCount As Integer = RountCommand.SelectCommand.ExecuteScalar() myConn.Close() If (intCount Mod intPagesize) > 0 Then Return (intCount \ intPagesize) + 1 Else Return (intCount \ intPagesize) End If End Function Public Function GotoPage(Optional ByVal intPage As Integer = 1) As DataView Call ConnectionDatabase() Dim myCommand As SqlDataAdapter myCommand = New SqlDataAdapter("GetPage", myConn) myCommand.SelectCommand.CommandType = CommandType.StoredProcedure myCommand.SelectCommand.Parameters.Add(New SqlParameter("@strTableName", SqlDbType.NVarChar, 50)) myCommand.SelectCommand.Parameters("@strTableName").Value = strTableName myCommand.SelectCommand.Parameters.Add(New SqlParameter("@fldName", SqlDbType.NVarChar, 200)) myCommand.SelectCommand.Parameters("@fldName").Value = strfldName myCommand.SelectCommand.Parameters.Add(New SqlParameter("@strWhere", SqlDbType.NVarChar, 200)) myCommand.SelectCommand.Parameters("@strWhere").Value = strWhere myCommand.SelectCommand.Parameters.Add(New SqlParameter("@fldOrderby", SqlDbType.NVarChar, 200)) myCommand.SelectCommand.Parameters("@fldOrderby").Value = strfldOrderby myCommand.SelectCommand.Parameters.Add(New SqlParameter("@page", SqlDbType.Int)) myCommand.SelectCommand.Parameters("@page").Value = intPage myCommand.SelectCommand.Parameters.Add(New SqlParameter("@pageSize", SqlDbType.Int)) myCommand.SelectCommand.Parameters("@pageSize").Value = intPagesize Dim ds As New DataSet myCommand.Fill(ds, "@Employees") Return ds.Tables("@Employees1").DefaultView myConn.Close() End Function End Class End Namespace (2)下面是WebForm1.aspx 的Codebehind Imports bbs.DataLayer Imports System Imports System.Web Imports System.Data Imports System.Data.SqlClient Public Class WebForm1 Inherits System.Web.UI.Page Private clsGetData As New GetData
#Region " Web 窗体设计器生成的代码 " ''''该调用是 Web 窗体设计器所必需的。 <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent() End Sub Protected WithEvents LinkButton1 As System.Web.UI.WebControls.LinkButton Protected WithEvents DataGrid1 As System.Web.UI.WebControls.DataGrid Protected WithEvents TextBox1 As System.Web.UI.WebControls.TextBox Protected WithEvents Button1 As System.Web.UI.WebControls.Button Protected WithEvents lnkNext As System.Web.UI.WebControls.LinkButton Protected WithEvents lnkPrve As System.Web.UI.WebControls.LinkButton Protected WithEvents Label1 As System.Web.UI.WebControls.Label Protected WithEvents Label2 As System.Web.UI.WebControls.Label Protected WithEvents Label3 As System.Web.UI.WebControls.Label ''''注意: 以下占位符声明是 Web 窗体设计器所必需的。 ''''不要删除或移动它。 Private designerPlaceholderDeclaration As System.Object Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init ''''CODEGEN: 此方法调用是 Web 窗体设计器所必需的 ''''不要使用代码编辑器修改它。 InitializeComponent() End Sub #End Region Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load If Not IsPostBack Then GridBind() End If End Sub Private Sub GridBind() clsGetData.TableName = "Products" ''''表名 clsGetData.fldNameCount = "ProductID" ''''获取记录总数时所用到的字段 clsGetData.fldName = "ProductID,ProductName" ''''要返回的字段 clsGetData.Pagesize = 10 ''''每页的大小 If clsGetData.fldOrderby = "" Then ''''排序的字段 clsGetData.fldOrderby = "ProductID" End If If PageCount = 0 Then PageCount = clsGetData.GetPageCount() End If If CurPage = PageCount Then lnkNext.Enabled = False Else &n 上一页 [1] [2] [3] 下一页 |