




















DataGrid.aspx页
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="DataGrid_page.aspx.vb" Inherits="Data.DataGrid_page"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>DataGrid_page</title>
<meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" content="Visual Basic .NET 7.1">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
</HEAD>
<body>
<form id="Form1" method="post" runat="server">
<table>
<tr>
<td style="HEIGHT: 5px">
<asp:DataGrid id="DataGrid1" AllowCustomPaging="false" PageSize="10" DataKeyField="id" AllowPaging="True"
AutoGenerateColumns="False" runat="server" Width="504px">
<Columns>
<asp:TemplateColumn HeaderText="编号" >
<ItemTemplate ><b><a href='<%# DataBinder.Eval(Container.DataItem, "id","aspx?id={0}") %>'>编号</a></b></ItemTemplate>
</asp:TemplateColumn>
<asp:BoundColumn DataField="uname" HeaderText="用户名"></asp:BoundColumn>
</Columns>
<PagerStyle Visible="False"></PagerStyle>
</asp:DataGrid>
</td>
</tr>
<tr>
<td>
<table width="500">
<tr>
<td>
<asp:linkbutton Runat="server" ID="frist" OnCommand="PagerButtonClick" CommandArgument="Frist">首页</asp:linkbutton>
<asp:linkbutton Runat="server" ID="prePage" OnCommand="PagerButtonClick" CommandArgument="pre">上一页</asp:linkbutton>
<asp:linkbutton Runat="server" ID="nextPage" OnCommand="PagerButtonClick" CommandArgument="next">下一页</asp:linkbutton>
<asp:linkbutton Runat="server" ID="lastPage" OnCommand="PagerButtonClick" CommandArgument="last">尾页</asp:linkbutton>
</td>
</tr>
</table>
</td>
</tr>
</table>
</form>
</body>
</HTML>
DataGrid.aspx.vb页
Public Class DataGrid_page
Inherits System.Web.UI.Page![]()
#Region " Web 窗体设计器生成的代码 "![]()
'该调用是 Web 窗体设计器所必需的。
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()![]()
End Sub
Protected WithEvents Data As System.Web.UI.WebControls.DataGrid
Protected WithEvents a As System.Web.UI.WebControls.DataGrid
Protected WithEvents DataGrid1 As System.Web.UI.WebControls.DataGrid
Protected WithEvents frist As System.Web.UI.WebControls.LinkButton
Protected WithEvents prePage As System.Web.UI.WebControls.LinkButton
Protected WithEvents nextPage As System.Web.UI.WebControls.LinkButton
Protected WithEvents lastPage As System.Web.UI.WebControls.LinkButton![]()
'注意: 以下占位符声明是 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
DataBlind()
End If
End Sub![]()
Sub DataBlind()
Dim Myconnection As SqlClient.SqlConnection
Dim MyAdatper As SqlClient.SqlDataAdapter
Dim ds As New DataSet
Dim read As SqlClient.SqlDataReader
Dim connstr = "server=(local);uid=sa;pwd=;database=achem56;"
Dim sql As String = "select id,uname from user_login "
Try
Myconnection = New SqlClient.SqlConnection(connstr)
MyAdatper = New SqlClient.SqlDataAdapter(sql, Myconnection)
MyAdatper.Fill(ds, "User_login")
DataGrid1.DataSource = ds.Tables("user_login")
DataGrid1.DataBind()
Catch ecc As Exception
Response.Write(ecc.Message)
Response.End()
Finally
End Try
Response.Write("CurrentPageindex/totalPageIndex: " & DataGrid1.CurrentPageIndex + 1 & "/" & DataGrid1.PageCount)
End Sub
Sub PagerButtonClick(ByVal sender As Object, ByVal e As CommandEventArgs)
Select Case e.CommandArgument
Case "Frist"
DataGrid1.CurrentPageIndex = 0
Case "pre"
If DataGrid1.CurrentPageIndex > 0 Then
DataGrid1.CurrentPageIndex = DataGrid1.CurrentPageIndex - 1
End If
Case "next"
If DataGrid1.CurrentPageIndex < DataGrid1.PageCount - 1 Then
DataGrid1.CurrentPageIndex = DataGrid1.CurrentPageIndex + 1
End If
Case "last"
DataGrid1.CurrentPageIndex = DataGrid1.PageCount - 1
End Select
DataBlind()
End Sub![]()
Private Sub DataGrid1_PageIndexChanged(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridPageChangedEventArgs) Handles DataGrid1.PageIndexChanged
DataGrid1.CurrentPageIndex = e.NewPageIndex
DataBlind()
End Sub
End Class
代码其实是不复杂的,重点是理解DataGrid的处理过程,事件机制.
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。