关键是用SqlDataAdapter如何来加这个@customerid参数的,“cmd_prev.Parameters("@customerid").Value = FirstID”它用的是command对象,换成SqlDataAdapter怎么办呀??还有,想看CSDN上以前的帖子,怎么看呀,现在就能看到最新的300条,其余的呢??

解决方案 »

  1.   

    你的数据都已经显示在DataGrid里了,就是没有分页吗?
      

  2.   

    我在上面加上两个linkbutton,实现自定义的分页,我用的是SqlDataAdapter来连SQL库,是不是一定要用上面的@customerid呀,可它怎么加到SqlDataAdapter中。
      

  3.   

    Mark!--------------------------
    学习一下。
      

  4.   

    用sqlCommand不是能实现么?为什么用sqlDataAdapter?--------------------------
    学习一下。
      

  5.   

    别人的代码,完全可以实现的。Imports System.Data.SqlClient
    Imports System.Data
    Imports System.Web.UIPublic Class WebForm1
        Inherits System.Web.UI.Page
        Protected WithEvents DataGrid1 As System.Web.UI.WebControls.DataGrid
        Protected WithEvents btnFirst As System.Web.UI.WebControls.LinkButton
        Protected WithEvents btnPrev As System.Web.UI.WebControls.LinkButton
        Protected WithEvents btnNext As System.Web.UI.WebControls.LinkButton
        Protected WithEvents btnLast As System.Web.UI.WebControls.LinkButton
        Protected WithEvents lblCurrentIndex As System.Web.UI.WebControls.Label
        Protected WithEvents lblPageCount As System.Web.UI.WebControls.Label
        Protected WithEvents MyDataGrid As System.Web.UI.WebControls.DataGrid
    #Region " Web 窗体设计器生成的代码 "    '该调用是 Web 窗体设计器所必需的。
        <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()    End Sub    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
            btnFirst.Text = "最首页"
            btnPrev.Text = "前一页"
            btnNext.Text = "下一页"
            btnLast.Text = "最后页"
            OpenDatabase()
            BindGrid()
        End Sub
        Sub MyDataGrid_Page(ByVal sender As Object, ByVal e As DataGridPageChangedEventArgs)
            Dim startIndex As Integer
            startIndex = MyDataGrid.CurrentPageIndex * MyDataGrid.PageSize
            MyDataGrid.CurrentPageIndex = e.NewPageIndex
            BindGrid()
            ShowStats()
        End Sub    Sub BindGrid()
            Dim myConnection As SqlConnection = cn
            Dim ds As DataSet = New DataSet()
            Dim adapter As SqlDataAdapter = New SqlDataAdapter("Select * from Orders", myConnection)
            adapter.Fill(ds, "Orders")
            MyDataGrid.DataSource = ds.Tables("Orders").DefaultView
            MyDataGrid.DataBind()
            ShowStats()    End Sub    Sub PagerButtonClick(ByVal sender As Object, ByVal e As EventArgs)
            'used by external paging UI
            Dim arg As String = sender.CommandArgument        Select Case arg
                Case "next"
                    If (MyDataGrid.CurrentPageIndex < (MyDataGrid.PageCount - 1)) Then
                        MyDataGrid.CurrentPageIndex += 1
                    End If
                Case "prev"
                    If (MyDataGrid.CurrentPageIndex > 0) Then
                        MyDataGrid.CurrentPageIndex -= 1
                    End If
                Case "last"
                    MyDataGrid.CurrentPageIndex = (MyDataGrid.PageCount - 1)
                Case Else
                    'page number
                    MyDataGrid.CurrentPageIndex = System.Convert.ToInt32(arg)
            End Select
            BindGrid()
            ShowStats()
        End Sub    Sub ShowStats()
            lblCurrentIndex.Text = "第 " + (MyDataGrid.CurrentPageIndex + 1).ToString() + " 页"
            lblPageCount.Text = "总共 " + MyDataGrid.PageCount.ToString() + " 页"
        End Sub
           Public cn As New SqlClient.SqlConnection()
        Public Sub OpenDatabase()
            cn.ConnectionString = "Server=hqeipmisdbsvr11;Database=NorthWind;User Id=sa;Password=;"
            cn.Open()
        End SubEnd Class