为DataGrid添加自动编号功能

王朝other·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

下面的代码实现在DataGrid中添加自动编号的功能,主要是在数据绑定时利用Item属性。

查看例子

DataGridWithLine.ASPx

<%@ Page Language="<a href="http://dev.21tx.com/language/vb/" target="_blank">VB</a>" AutoEventWireup="false" Codebehind="DataGridWithLine.aspx.vb"

Inherits="aspx<a href="http://dev.21tx.com/web/" target="_blank">Web</a>.DataGridWithLine"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>

<HEAD>

<title>DataGridWithLine</title>

<meta name="GENERATOR" content="Microsoft Visual Studio <a href="http://dev.21tx.com/dotnet/" target="_blank">.net</a> 7.0">

<meta name="CODE_LANGUAGE" content="Visual Basic 7.0">

<meta name="vs_defaultClientScript" content="<a href="http://dev.21tx.com/web/javascript/" target="_blank">JavaScript</a>">

<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">

</HEAD>

<body MS_POSITIONING="GridLayout">

<form id="Form1" method="post" runat="server">

<asp:DataGrid id="DataGrid1" runat="server" AutoGenerateColumns="False">

<HeaderStyle Font-Bold="True" Wrap="False" HorizontalAlign="Center"></HeaderStyle>

<Columns>

<asp:TemplateColumn></asp:TemplateColumn>

<asp:BoundColumn DataField="Title"></asp:BoundColumn>

<asp:BoundColumn DataField="CreateDate" DataFormatString="{0:yyyy-M-d h:m:s}"></asp:BoundColumn>

</Columns>

</asp:DataGrid>

</form>

</body>

</HTML>

DataGridWithLine.aspx.vb

Imports System

Imports System.Data

Imports System.Data.OleDb

Public Class DataGridWithLine

Inherits System.Web.UI.Page

Protected WithEvents DataGrid1 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

DataGrid1.Columns(0).HeaderText = "序号"

DataGrid1.Columns(1).HeaderText = "文章标题"

DataGrid1.Columns(2).HeaderText = "创建日期"

Dim cnString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("Test.mdb")

Dim strSQL As String = "SELECT TOP 21 Title,CreateDate FROM Document ORDER By CreateDate DESC"

Dim cn As New OleDbConnection(cnString)

cn.Open()

Dim cmd As New OleDbCommand(strSQL, cn)

Dim db As OleDbDataReader

db = cmd.ExecuteReader(CommandBehavior.CloseConnection)

DataGrid1.DataSource = db

DataGrid1.DataBind()

cn.Close()

cn = Nothing

cmd = Nothing

db.Close()

db = Nothing

End Sub

Private Sub DataGrid1_ItemDataBound(ByVal sender As Object, _

ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles DataGrid1.ItemDataBound

If e.Item.ItemIndex <> -1 Then

e.Item.Cells(0).Text = e.Item.ItemIndex + 1

End If

End Sub

End Class

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航