我把代码也贴出来吧:DataGridPaging.aspx<%@ Page Language="vb" AutoEventWireup="false" Codebehind="DataGridPaging.aspx.vb" Inherits="DataGridPaging"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
  <HEAD>
    <meta content="Visual Basic 7.0" name="CODE_LANGUAGE">
    <meta content="JavaScript" name="vs_defaultClientScript">
    <meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
  </HEAD>
  <body MS_POSITIONING="GridLayout">
    <form id="Form1" runat="server">
      <asp:datagrid id="MyDataGrid" runat="server" AlternatingItemStyle-BackColor="#eeeeee"
   HeaderStyle-BackColor="#aaaadd" Font-Size="8pt" Font-Name="Verdana" CellSpacing="0"
    CellPadding="3" GridLines="Both" BorderWidth="1" BorderColor="black"
 OnPageIndexChanged="MyDataGrid_Page" PagerStyle-HorizontalAlign="Right"
  PagerStyle-Mode="NumericPages" PageSize="5" AllowPaging="True">
        <AlternatingItemStyle BackColor="#EEEEEE"></AlternatingItemStyle>
        <HeaderStyle BackColor="#AAAADD"></HeaderStyle>
        <PagerStyle HorizontalAlign="Right" Mode="NumericPages"></PagerStyle>
      </asp:datagrid>
      <p style="font-size:9pt">
        <asp:label id="lblPageCount" runat="server"></asp:label>&nbsp;
        <asp:label id="lblCurrentIndex" runat="server"></asp:label>
        <asp:linkbutton id="btnFirst" onclick="PagerButtonClick" runat="server"
 Font-Name="verdana" Font-size="8pt" ForeColor="navy" CommandArgument="0">
 </asp:linkbutton>&nbsp;
        <asp:linkbutton id="btnPrev" onclick="PagerButtonClick" runat="server"
 Font-Name="verdana" Font-size="8pt" ForeColor="navy" CommandArgument="prev">
 </asp:linkbutton>&nbsp;
        <asp:linkbutton id="btnNext" onclick="PagerButtonClick" runat="server"
 Font-Name="verdana" Font-size="8pt" ForeColor="navy" CommandArgument="next">
 </asp:linkbutton>&nbsp;
        <asp:linkbutton id="btnLast" onclick="PagerButtonClick" runat="server"
 Font-Name="verdana" Font-size="8pt" ForeColor="navy" CommandArgument="last">
 </asp:linkbutton>
      </p>
    </form>
  </body>
</HTML>
===============================================================
DataGridPaging.aspx.vb
---------------------------------
Imports System.Data.SqlClient
Imports System.Data
Imports System.Web.UIPublic Class DataGridPaging
  Inherits System.Web.UI.Page  Protected WithEvents MyDataGrid 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 DataGrid1 As System.Web.UI.WebControls.DataGrid#Region " Web Form Designer Generated Code "  'This call is required by the Web Form Designer.
  <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: This method call is required by the Web Form Designer
    'Do not modify it using the code editor.
    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=.;Database=NorthWind;User Id=sa;Password=;"
    cn.Open()
  End Sub
End Class

解决方案 »

  1.   

    后来我把代码稍微改了下:<%@ Import namespace="System.Data"%>
    <%@ Import namespace="System.Data.SqlClient"%>
    <%@ Import namespace="System.Web.UI"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <meta content="Visual Basic 7.0" name="CODE_LANGUAGE">
    <meta content="JavaScript" name="vs_defaultClientScript">
    <meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>Datagrid完整分页程序---原作:孟子E章</title>
    </HEAD>
    <body ms_positioning="Grid_layout">
    <form runat="server" name="form1">
    <asp:datagrid ID="mydatagrid" runat="server" AlternatingItemStyle-BackColor="#eeeeee" 
    HeaderStyle-BackColor="#aaaadd" Font-Size="8pt" Font-Name="Verdata" CellSpacing="0"
    CellPadding="3" GridLines="Both" BorderWidth="1" BorderColor="#000000" onpageIndexChanged="Mydatagrid_page"
    Pagerstyle-horizontalAlign="right" PagerStyle-Mode="NumericPages" PageSize="5" AllowPaging="true">
    <alternatingitemstyle BackColor="#eeeeee"></alternatingitemstyle>
    <headerstyle BackColor="#AAAADD"></headerstyle>
    <pagerstyle HorizontalAlign="right" Mode="NumericPages"></pagerstyle>
    <Columns>
    <asp:BoundColumn HeaderText="标题" DataField="Title" HeaderStyle-Width="480px">
    </asp:BoundColumn>
    <asp:BoundColumn HeaderText="发表日期" DataField="putdate" DataFormatString="{0:yyyy-MM-dd hh:mm:ss}">
    </asp:BoundColumn>
    </Columns>
    </asp:datagrid>
    <p style="font-size:9pt">
    <asp:label ID="lblPagecount" runat="server"></asp:label>
    <asp:label ID="lblPageCurrentIndex" runat="server"></asp:label>
    <asp:linkbutton ID="btnFirst" OnClick="PagerButtonClick" runat="server"
    Font-Name="verdana" font-size="8pt" ForeColor="navy" CommandArgument="0">&nbsp;</asp:linkbutton>
    <asp:linkbutton ID="btnPrev" OnClick="PagerButtonClick" runat="server"
    Font-Name="verdana" Font-Size="8pt" ForeColor="navy" commandArgument="Prev">&nbsp;</asp:linkbutton>
    <asp:linkbutton ID="btnNext" OnClick="PagerButtonClick" runat="server"
    Font-Name="verdana" Font-Size="8pt" ForeColor="navy" commandArgument="Next">&nbsp;</asp:linkbutton>
    <asp:linkbutton ID="btnLast" OnClick="PagerButtonClick" runat="server"
    Font-Name="verdana" Font-Size="8pt" ForeColor="navy" CommandArgument="Last">&nbsp;</asp:linkbutton>
    </p>
    </form>
    </body>
    </html>
    <script language="VB" runat="server">
    Public Class DataGridPaging
     Inherits System.Web.UI.Page
     
     Protected WithEvents MyDatagrid 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 Datagrid1 As System.Web.UI.WebControls.Datagrid
     
    #Region "Web Form Designer Generated Code"
     
     'This call is required by Web Form Designer
     <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
    End subPrivate Sub Page_init(Byval sender as System.Object,Byval e as System.Args) Handles Mybase.Init
        'CODEGEN: This method call is required by the Web Form Designer
        'Do not modify it using the code editor.
        InitializeComponent()
    End Sub#End RegionPrivate Sub Page_load(Byval sender as Sytem.Objectm Byval E as System.Args) Handles Mybase.Load
      btnFirst.Text="第一页"
      btnPrev.Text="上一页"
      btnNext.Text="下一页"
      btnLast.Text="最末页"
      OpenDatabase()
      BindDatagrid()
    End subSub MyDataGrid_Page(Byval sender as object,Byval e as DatagridPageChangeEventArgs)
     Dim startIndex as Integer
     startIndex = MyDataGrid.CurrentPageIndex * MyDataGrid.PageSize
     MyDatagrid.CurrentPageIndex = E as NewPageIndex
     BindGrid()
     ShowStats()
    End subSub BindGrid()
     Dim myConnection As SqlConnection=cn
     Dim ds As DataSet = New DataSet()
     Dim adapter as SqlDataAdapter = New SqlDataAdapter("Select * from mdata",myConnection)
     adapter.Fill(ds,"mdata")
     Mydatagrid.DataSource=ds.Tables("mdata").DefaultView
     MyDataGrid.DataBind()
     ShowStats()
    End subSub 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.Conver.ToInt32(arg)
       End Select
       BindGrid()
       ShowStats()
    End subSub ShowStats()
      lblCurrentIndex.Text = "第" + (MyDataGrid.CurrentPageIndex + 1).ToString() + "页"
      lblPageCount.Text = "总共" + MyDataGrid.PageCount.Tostring() + "页"
    End subPublic cn As New SqlClient.SqlConnection()Public Sub OpenDatabase()
     cn.ConnectionString = "Server=liuquan;Database=web;User Id=sa;Password=92014011"
     cn.Open()
    End Sub
    </script>运行的时候又出现下面的现象:
    编译错误 
    说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。 编译器错误信息: BC30456: “__control2”不是“ASP.datagrids_aspx.DataGridPaging”的成员。源错误: 行 1:  <%@ Import namespace="System.Data"%>
    行 2:  <%@ Import namespace="System.Data.SqlClient"%>
    行 3:  <%@ Import namespace="System.Web.UI"%>
     
    ----------------------
    麻烦各位老大帮我看看,到底是错在了哪里,谢谢各位了!
      

  2.   

    如果你 有vs.net的话,你可以先建立
    DataGridPaging.aspx
    文件,
    再把我的DataGridPaging.aspx里的文件内容除<%@%>行的内容不拷贝,其他的拷贝。另外,如果你把代码直接放在aspx里的话
    <%@ Page Language="vb" AutoEventWireup="false" Codebehind="DataGridPaging.aspx.vb" Inherits="DataGridPaging"%>Codebehind就没有用了、可以参考
    http://dotnet.aspx.cc/Exam/UltraDataGrid.zip
    里的文件头的写法
      

  3.   

    正确的<%@ Page Language="VB" AutoEventWireup="True" %>
    <%@ Import Namespace = "System" %>
    <%@ Import Namespace = "System.Data" %>
    <%@ Import Namespace = "System.Data.SqlClient"%>
    <%@ Import Namespace = "System.Web.UI"%>
    <%@ Import Namespace = "System.Web.UI.WebControls"%>
    <%@ Import Namespace = "System.Web.UI.HtmlControls"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <meta content="Visual Basic 7.0" name="CODE_LANGUAGE">
    <meta content="JavaScript" name="vs_defaultClientScript">
    <meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>Datagrid完整分页程序---原作:孟子E章</title>
    </HEAD>
    <body ms_positioning="Grid_layout">
    <form runat="server">
    <asp:DataGrid ID="mydatagrid" runat="server" AlternatingItemStyle-BackColor="#eeeeee"
    HeaderStyle-BackColor="#aaaadd" Font-Size="8pt" Font-Name="Verdata" CellSpacing="0"
    CellPadding="3" GridLines="Both" BorderWidth="1" BorderColor="#000000" OnPageIndexChanged="Mydatagrid_Page"
    Pagerstyle-horizontalAlign="right" PagerStyle-Mode="NumericPages" PageSize="5" AllowPaging="true">
    <alternatingitemstyle BackColor="#eeeeee"></alternatingitemstyle>
    <headerstyle BackColor="#AAAADD"></headerstyle>
    <pagerstyle HorizontalAlign="right" Mode="NumericPages"></pagerstyle>
    <Columns>
    <asp:BoundColumn HeaderText="标题" DataField="Title" HeaderStyle-Width="480px">
    </asp:BoundColumn>
    <asp:BoundColumn HeaderText="发表日期" DataField="createtime" DataFormatString="{0:yyyy-MM-dd hh:mm:ss}">
    </asp:BoundColumn>
    </Columns>
    </asp:DataGrid>
    <p style="font-size:9pt">
    <asp:label ID="lblPagecount" runat="server"></asp:label>
    <asp:label ID="lblPageCurrentIndex" runat="server"></asp:label>
    <asp:linkbutton ID="btnFirst" OnClick="PagerButtonClick" runat="server"
    Font-Name="verdana" font-size="8pt" ForeColor="navy" CommandArgument="0">&nbsp;</asp:linkbutton>
    <asp:linkbutton ID="btnPrev" OnClick="PagerButtonClick" runat="server"
    Font-Name="verdana" Font-Size="8pt" ForeColor="navy" commandArgument="Prev">&nbsp;</asp:linkbutton>
    <asp:linkbutton ID="btnNext" OnClick="PagerButtonClick" runat="server"
    Font-Name="verdana" Font-Size="8pt" ForeColor="navy" commandArgument="Next">&nbsp;</asp:linkbutton>
    <asp:linkbutton ID="btnLast" OnClick="PagerButtonClick" runat="server"
    Font-Name="verdana" Font-Size="8pt" ForeColor="navy" CommandArgument="Last">&nbsp;</asp:linkbutton>
    </p>
    </form>
    </body>
    </html>
    <script language="VB" runat="server">
    Sub Page_load(sender As Object, e As EventArgs)
      btnFirst.Text="第一页"
      btnPrev.Text="上一页"
      btnNext.Text="下一页"
      btnLast.Text="最末页"
      OpenDatabase()
      BindGrid()
    End subSub MyDataGrid_Page(sender as Object, e As DataGridPageChangedEventArgs)
     Dim startIndex as Integer
     startIndex = MyDataGrid.CurrentPageIndex * MyDataGrid.PageSize
     MyDatagrid.CurrentPageIndex = e.NewPageIndex
     BindGrid()
     ShowStats()
    End subSub BindGrid()
     Dim myConnection As SqlConnection=cn
     Dim ds As DataSet = New DataSet()
     Dim adapter as SqlDataAdapter = New SqlDataAdapter("Select * from BaseObject",myConnection)
     adapter.Fill(ds,"BaseObject")
     Mydatagrid.DataSource=ds.Tables("BaseObject").DefaultView
     MyDataGrid.DataBind()
     ShowStats()
    End subSub 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 subSub ShowStats()
      lblPageCurrentIndex.Text = "第" + (MyDataGrid.CurrentPageIndex + 1).ToString() + "页"
      lblPageCount.Text = "总共" + MyDataGrid.PageCount.Tostring() + "页"
    End subPublic cn As New SqlClient.SqlConnectionPublic Sub OpenDatabase()
     cn.ConnectionString = "Server=xxx;Database=xxx;User Id=sa;Password=xxx"
     cn.Open()
    End Sub</script>
      

  4.   

    完全正确的
    注意修改链接字符串和表名,绑定的字段名字<%@ Page Language="VB" AutoEventWireup="True" Debug="true"%>
    <%@ Import Namespace = "System" %>
    <%@ Import Namespace = "System.Data" %>
    <%@ Import Namespace = "System.Data.SqlClient"%>
    <%@ Import Namespace = "System.Web.UI"%>
    <%@ Import Namespace = "System.Web.UI.WebControls"%>
    <%@ Import Namespace = "System.Web.UI.HtmlControls"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <meta content="Visual Basic 7.0" name="CODE_LANGUAGE">
    <meta content="JavaScript" name="vs_defaultClientScript">
    <meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>Datagrid完整分页程序---原作:孟子E章</title>
    </HEAD>
    <body ms_positioning="Grid_layout">
    <form runat="server">
    <asp:DataGrid ID="mydatagrid" runat="server" AlternatingItemStyle-BackColor="#eeeeee"
    HeaderStyle-BackColor="#aaaadd" Font-Size="8pt" Font-Name="Verdata" CellSpacing="0"
    CellPadding="3" GridLines="Both" BorderWidth="1" BorderColor="#000000" OnPageIndexChanged="Mydatagrid_Page"
    Pagerstyle-horizontalAlign="right" PagerStyle-Mode="NumericPages" PageSize="5" AllowPaging="true">
    <alternatingitemstyle BackColor="#eeeeee"></alternatingitemstyle>
    <headerstyle BackColor="#AAAADD"></headerstyle>
    <pagerstyle HorizontalAlign="right" Mode="NumericPages"></pagerstyle>
    <Columns>
    <asp:BoundColumn HeaderText="标题" DataField="ProductName" HeaderStyle-Width="480px">
    </asp:BoundColumn>
    <asp:BoundColumn HeaderText="发表日期" DataField="ProductID" DataFormatString="{0:yyyy-MM-dd hh:mm:ss}">
    </asp:BoundColumn>
    </Columns>
    </asp:DataGrid>
    <p style="font-size:9pt">
    <asp:label ID="lblPagecount" runat="server"></asp:label>
    <asp:label ID="lblPageCurrentIndex" runat="server"></asp:label>
    <asp:linkbutton ID="btnFirst" OnClick="PagerButtonClick" runat="server"
    Font-Name="verdana" font-size="8pt" ForeColor="navy" CommandArgument="0">&nbsp;</asp:linkbutton>
    <asp:linkbutton ID="btnPrev" OnClick="PagerButtonClick" runat="server"
    Font-Name="verdana" Font-Size="8pt" ForeColor="navy" commandArgument="Prev">&nbsp;</asp:linkbutton>
    <asp:linkbutton ID="btnNext" OnClick="PagerButtonClick" runat="server"
    Font-Name="verdana" Font-Size="8pt" ForeColor="navy" commandArgument="Next">&nbsp;</asp:linkbutton>
    <asp:linkbutton ID="btnLast" OnClick="PagerButtonClick" runat="server"
    Font-Name="verdana" Font-Size="8pt" ForeColor="navy" CommandArgument="Last">&nbsp;</asp:linkbutton>
    </p>
    </form>
    </body>
    </html>
    <script language="VB" runat="server">
    Sub Page_load(sender As Object, e As EventArgs)
      btnFirst.Text="第一页"
      btnPrev.Text="上一页"
      btnNext.Text="下一页"
      btnLast.Text="最末页"
      OpenDatabase()
      BindGrid()
    End subSub MyDataGrid_Page(sender as Object, e As DataGridPageChangedEventArgs)
     Dim startIndex as Integer
     startIndex = MyDataGrid.CurrentPageIndex * MyDataGrid.PageSize
     MyDatagrid.CurrentPageIndex = e.NewPageIndex
     BindGrid()
     ShowStats()
    End subSub BindGrid()
     Dim myConnection As SqlConnection=cn
     Dim ds As DataSet = New DataSet()
     Dim adapter as SqlDataAdapter = New SqlDataAdapter("Select * from Products",myConnection)
     adapter.Fill(ds,"Products")
     Mydatagrid.DataSource=ds.Tables("Products").DefaultView
     MyDataGrid.DataBind()
     ShowStats()
    End subSub PagerButtonClick(sender as Object,e as EventArgs)
      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
    MyDataGrid.CurrentPageIndex = System.Convert.ToInt32(arg)
       End Select
       BindGrid()
       ShowStats()
    End subSub ShowStats()
      lblPageCurrentIndex.Text = "第" + (MyDataGrid.CurrentPageIndex + 1).ToString() + "页"
      lblPageCount.Text = "总共" + MyDataGrid.PageCount.Tostring() + "页"
    End subPublic cn As New SqlClient.SqlConnectionPublic Sub OpenDatabase()
     cn.ConnectionString = "Server=(local)\NetSDK;Database=NorthWind;User Id=sa;Password="
     cn.Open()
    End Sub</script>
      

  5.   

    <%@ Page Language="VB" AutoEventWireup="True" Debug="true"%>
    <%@ Import Namespace = "System" %>
    <%@ Import Namespace = "System.Data" %>
    <%@ Import Namespace = "System.Data.SqlClient"%>
    <%@ Import Namespace = "System.Web.UI"%>
    <%@ Import Namespace = "System.Web.UI.WebControls"%>
    <%@ Import Namespace = "System.Web.UI.HtmlControls"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <meta content="Visual Basic 7.0" name="CODE_LANGUAGE">
    <meta content="JavaScript" name="vs_defaultClientScript">
    <meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>Datagrid完整分页程序---原作:孟子E章</title>
    </HEAD>
    <body ms_positioning="Grid_layout">
    <form runat="server">
    <asp:DataGrid ID="mydatagrid" runat="server" AutoGenerateColumns="false"
     AlternatingItemStyle-BackColor="#eeeeee"
    HeaderStyle-BackColor="#aaaadd" Font-Size="8pt" Font-Name="Verdata" CellSpacing="0"
    CellPadding="3" GridLines="Both" BorderWidth="1" BorderColor="#000000" OnPageIndexChanged="Mydatagrid_Page"
    Pagerstyle-horizontalAlign="right" PagerStyle-Mode="NumericPages" PageSize="5" AllowPaging="true">
    <alternatingitemstyle BackColor="#eeeeee"></alternatingitemstyle>
    <headerstyle BackColor="#AAAADD"></headerstyle>
    <pagerstyle HorizontalAlign="right" Mode="NumericPages"></pagerstyle>
    <Columns>
    <asp:BoundColumn HeaderText="产品编号" DataField="ProductID" HeaderStyle-Width="480px">
    </asp:BoundColumn>
    <asp:BoundColumn HeaderText="产品名字" DataField="ProductName">
    </asp:BoundColumn>
    </Columns>
    </asp:DataGrid>
    <p style="font-size:9pt">
    <asp:label ID="lblPagecount" runat="server"></asp:label>
    <asp:label ID="lblPageCurrentIndex" runat="server"></asp:label>
    <asp:linkbutton ID="btnFirst" OnClick="PagerButtonClick" runat="server"
    Font-Name="verdana" font-size="8pt" ForeColor="navy" CommandArgument="0">&nbsp;</asp:linkbutton>
    <asp:linkbutton ID="btnPrev" OnClick="PagerButtonClick" runat="server"
    Font-Name="verdana" Font-Size="8pt" ForeColor="navy" commandArgument="Prev">&nbsp;</asp:linkbutton>
    <asp:linkbutton ID="btnNext" OnClick="PagerButtonClick" runat="server"
    Font-Name="verdana" Font-Size="8pt" ForeColor="navy" commandArgument="Next">&nbsp;</asp:linkbutton>
    <asp:linkbutton ID="btnLast" OnClick="PagerButtonClick" runat="server"
    Font-Name="verdana" Font-Size="8pt" ForeColor="navy" CommandArgument="Last">&nbsp;</asp:linkbutton>
    </p>
    </form>
    </body>
    </html>
    <script language="VB" runat="server">
    Sub Page_load(sender As Object, e As EventArgs)
      btnFirst.Text="第一页"
      btnPrev.Text="上一页"
      btnNext.Text="下一页"
      btnLast.Text="最末页"
      OpenDatabase()
      BindGrid()
    End subSub MyDataGrid_Page(sender as Object, e As DataGridPageChangedEventArgs)
     Dim startIndex as Integer
     startIndex = MyDataGrid.CurrentPageIndex * MyDataGrid.PageSize
     MyDatagrid.CurrentPageIndex = e.NewPageIndex
     BindGrid()
     ShowStats()
    End subSub BindGrid()
     Dim myConnection As SqlConnection=cn
     Dim ds As DataSet = New DataSet()
     Dim adapter as SqlDataAdapter = New SqlDataAdapter("Select * from Products",myConnection)
     adapter.Fill(ds,"Products")
     Mydatagrid.DataSource=ds.Tables("Products").DefaultView
     MyDataGrid.DataBind()
     ShowStats()
    End subSub PagerButtonClick(sender as Object,e as EventArgs)
      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
    MyDataGrid.CurrentPageIndex = System.Convert.ToInt32(arg)
       End Select
       BindGrid()
       ShowStats()
    End subSub ShowStats()
      lblPageCurrentIndex.Text = "第" + (MyDataGrid.CurrentPageIndex + 1).ToString() + "页"
      lblPageCount.Text = "总共" + MyDataGrid.PageCount.Tostring() + "页"
    End subPublic cn As New SqlClient.SqlConnectionPublic Sub OpenDatabase()
     cn.ConnectionString = "Server=(local)\NetSDK;Database=NorthWind;User Id=sa;Password="
     cn.Open()
    End Sub
    </script>
      

  6.   

    非常感谢孟子老大.
    大家不要笑我, .net我刚开始学,我相信凭我的努力以及各位大哥们的帮助,我一定会成功的!