日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

给Repeater、Datalist和Datagrid增加自动编号列

發布時間:2025/4/14 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 给Repeater、Datalist和Datagrid增加自动编号列 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

內容
1
Taye
2
BOx
3
Glass
4
StarCraft

一、正序
A、AllowPaging=False情況下,使用以下方法就可以實現:
1<asp:DataGrid?id="DataGrid1"?runat="server">?
2????<Columns>?
3?????<asp:TemplateColumn>?
4??????<ItemTemplate>?
5???????<%#?Container.ItemIndex?+?1%>?
6??????</ItemTemplate>?
7?????</asp:TemplateColumn>?
8????</Columns>?
9?</asp:DataGrid>

不過更有趣的方法是使用這個方法:

1<asp:DataGrid?id="DataGrid1"?runat="server">?
2????<Columns>?
3?????<asp:TemplateColumn>?
4??????<ItemTemplate>?
5???????<%#?this.DataGrid1.Items.Count?+?1%>?
6??????</ItemTemplate>?
7?????</asp:TemplateColumn>?
8????</Columns>?
9</asp:DataGrid>

也許有些人會覺得很奇怪為什么Items.Count會這樣,而不是出來全部總合,但如果你了解綁定的過程時就容易理解。[從上面來看就是在ItemCreated事件中進行綁定所以得到的Items.Count剛好是當前的序號]

B、AllowPaging="True"下,如果DataGrid支持分頁則可以如下:
1<asp:DataGrid?id="DataGrid1"?runat="server"?AllowPaging="True">?
2????<Columns>?
3?????<asp:TemplateColumn>?
4??????<ItemTemplate>?
5???????<%#?this.DataGrid1.CurrentPageIndex?*?this.DataGrid1.PageSize?+?Container.ItemIndex?+?1%>?
6??????</ItemTemplate>?
7?????</asp:TemplateColumn>?
8????</Columns>?
9</asp:DataGrid>

二、倒序的方法?

序號
內容
4
Taye
3
BOx
2
Glass
1
StarCraft

由上面可以知道使用this.DataGrid1.Items.Count - Container.ItemIndex + 1方法是不可能實現的,得到值而且全會為1,分頁的情況下更是一樣.所以一開始我們就要取得數據源的行數:

?1private?int?rowscount?=?0;?
?2?????????protected?int?RowsCount?
?3?????????{?
?4??????????????get{?return?rowscount;}?
?5??????????????set{?this.rowscount?=?value;?}?
?6?????????}?
?7??????
?8?????????private?void?Page_Load(object?sender,?System.EventArgs?e)?
?9?????????{?
10??????????????//?在此處放置用戶代碼以初始化頁面?
11??????????????if(!IsPostBack)?
12???????????????????this.BindData();?
13?????????}?
14?????????private?void?BindData()?
15?????????{?
16??????????????SqlConnection?cn?=?new?SqlConnection("server=(local);database=NorthWind;uid=sa;pwd=");?
17??????????????string?str=@"SELECT?Employees.EmployeeID,?Orders.EmployeeID?
18?????????????????????????????????FROM?Employees?INNER?JOIN?
19???????????????????????Orders?ON?Employees.EmployeeID?=?Orders.EmployeeID?";?
20??????????????SqlDataAdapter?sqlda?=?new?SqlDataAdapter(str,cn);?
21??????????????DataSet?ds?=?new?DataSet();?
22??????????????sqlda.Fill(ds);?
23??????????????this.RowsCount?=?ds.Tables[0].Rows.Count;?
24??????????????this.DataGrid1.DataSource?=?ds;?
25??????????????this.DataGrid1.DataBind();?
26}

1<asp:DataGrid?id="DataGrid1"?runat="server"?AllowPaging="True">?
2????????????????????????????<Columns>?
3???????????????????????????????????<asp:TemplateColumn>?
4??????????????????????????????????????????<ItemTemplate>?
5?????????????????????????????????????????????????<%#?RowsCount?-?DataGrid1.CurrentPageIndex?*?DataGrid1.PageSize?-?Container.ItemIndex?%>?
6??????????????????????????????????????????</ItemTemplate>?
7???????????????????????????????????</asp:TemplateColumn>?
8????????????????????????????</Columns>?
9?????????????????????</asp:DataGrid>

轉載于:https://www.cnblogs.com/top5/archive/2009/10/09/1579478.html

總結

以上是生活随笔為你收集整理的给Repeater、Datalist和Datagrid增加自动编号列的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。