首 页 | 新 闻 | 技术中心 | 第二书店 | 《程序员》 | 《开发高手》 | 社 区 | 黄 页 | 人 才
移 动专 题SUNIBM微 软微 创精 华Donews人 邮
我的技术中心 
我的分类 我的文档
全部文章 发表文章
专栏管理 使用说明



 RSS 订阅 
最新文档列表
Windows/.NET
.NET  (rss)    
Visual C++  (rss)    
Delphi  (rss)    
Visual Basic  (rss)    
ASP  (rss)    
JavaScript  (rss)    
Java/Linux
Java  (rss)    
Perl  (rss)    
综合
其他开发语言  (rss)    
文件格式  (rss)    
企业开发
游戏开发  (rss)    
网站制作技术  (rss)    
数据库
数据库开发  (rss)    
软件工程
其他  (rss)    

积极原创作者 
wangchinaking (57)
yjz0065 (113)
coofucoo (105)
Drate (69)
lphpc (30)
smallnest (61)
iiprogram (64)
downmoon (32)
danny_xcz (49)
btbtd (81)
CSDN - 文档中心 - .NET 阅读:7134   评论: 5    参与评论
标题   为DataGrid添加自动编号功能     选择自 net_lover 的 Blog
关键字   DataGrid,自动编号
出处  

为DataGrid添加自动编号功

http://lucky_elove.www1.dotnetplayground.com/

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

查看例子

DataGridWithLine.aspx

<%@ Page Language="vb" AutoEventWireup="false" Codebehind="DataGridWithLine.aspx.vb" Inherits="aspxWeb.DataGridWithLine"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <title>DataGridWithLine</title> <meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.0"> <meta name="CODE_LANGUAGE" content="Visual Basic 7.0"> <meta name="vs_defaultClientScript" content="JavaScript"> <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

相关文章
对该文的评论
Jarod ( 2005-03-29)
分页的情况下
int startIndex = MyDataGrid.PageSize * MyDataGrid.CurrentPageIndex;
e.Item.Cells[0].Text = (startIndex + e.Item.ItemIndex + 1).ToString();
CSDN 网友 ( 2004-06-16)
e.Item.Cells(0).Text = e.Item.ItemIndex + 1
这个也不对吧
e.Item.Cells(0).Text = (e.Item.ItemIndex + 1).tostring
CSDN 网友 ( 2004-06-16)
你这个是针对没有分页的情况下的吧,如果有分页,你的这个效果就没有用了
dragonsuc ( 2003-06-13)
我今天想到,还是板主快
lonelystranger ( 2003-06-05)
Not bad!