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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

(转贴)给Repeater、Datalist和Datagrid增加自动编号列

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

給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/xivi/archive/2005/08/22/220117.html

總結

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

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