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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

repeater的嵌套(转+总结)[http://www.cnblogs.com/esshs/archive/2005/04/07/132825.html]

發布時間:2025/3/15 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 repeater的嵌套(转+总结)[http://www.cnblogs.com/esshs/archive/2005/04/07/132825.html] 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

實現效果如下圖:

?

前臺代碼:

?

Code
????<div>
????????
<asp:Repeater?ID="Repeater1"?runat="server"?OnItemDataBound="Repeater1_ItemDataBound">
????????
<HeaderTemplate>
????????
<table?width="100%"?border="0"??cellpadding="0"?cellspacing="0"></table>
????????
</HeaderTemplate>
????????
<ItemTemplate>
????????
<!--分類名稱-->
????????
<tr>
????????
<td><%#Eval("cate_name")?%>
????????
<br?/>
????????
</td>
????????
</tr>
????????
<asp:Repeater?ID="Repeater2"?runat="server">
????????
<ItemTemplate>
????????
<tr>
????????
<td>&nbsp;&nbsp;&nbsp;&nbsp;<%#Eval("proc_name")%>?<br?/>
????????
</td>
????????
</tr>
????????
</ItemTemplate>
????????
</asp:Repeater>
????????
<br?/>
????????
</ItemTemplate>
????????
<AlternatingItemTemplate>
????????
<tr>
????????
<td><%#Eval("cate_name")?%>
????????
</td>
????????
</tr>
????????
</AlternatingItemTemplate>
????????
<SeparatorTemplate>
????????
</SeparatorTemplate>
????????
<FooterTemplate>
????????
</table>
????????
</FooterTemplate>
????????
</asp:Repeater>
????????
&nbsp;
????
????
</div>

?

后臺代碼:

?

Code
protected?void?Page_Load(object?sender,?EventArgs?e)
????
{
????????
this.Repeater1.DataSource?=?DataBind();
????????
this.Repeater1.DataBind();
????}

????
/**////?<summary>
????
///類別的數據源
????
///?</summary>

????public?DataSet?DataBind()
????
{
????????
string?Connstring?=?"server=.;database=temptest;uid=sa;pwd=sa;";
????????
string?sqlStr?=?"select?*?from?Categories";
????????
using?(SqlConnection?con?=?new?SqlConnection(Connstring))
????????
{
????????????con.Open();
????????????SqlDataAdapter?sda?
=?new?SqlDataAdapter(sqlStr,?con);
????????????DataSet?ds?
=?new?DataSet();
????????????sda.Fill(ds,?
"Category");
????????????
return?ds;
????????}

????}

????
protected?void?Repeater1_ItemDataBound(object?sender,?RepeaterItemEventArgs?e)
????
{
????????
if?(e.Item.ItemType?==?ListItemType.Item?||?e.Item.ItemType?==?ListItemType.AlternatingItem)
????????
{
????????????Repeater?rptProduct?
=?(Repeater)e.Item.FindControl("Repeater2");
????????????
if?(rptProduct?!=?null)
????????????
{
????????????????
//找到分類?Repeater關聯的數據項
????????????????DataRowView?rowv?=?(DataRowView)e.Item.DataItem;
????????????????
//提取分類ID
????????????????int?Cate_id?=?Convert.ToInt32(rowv["cate_id"]);
????????????????
//根據分類ID來獲取分類下的產品,并綁定產品Repeater2
????????????????rptProduct.DataSource?=?DataBind(Cate_id);
????????????????rptProduct.DataBind();
????????????}

????????}

????}

????
/**////?<summary>
????
///類別下產品的數據源
????
///?</summary>

????public?DataSet?DataBind(int?category)
????
{
????????
string?Connstring?=?"server=.;database=temptest;uid=sa;pwd=sa;";
????????
string?sqlStr?=?"select?*?from?Procducts?where?cate_id=@cate_id";
????????
using?(SqlConnection?con?=?new?SqlConnection(Connstring))
????????
{
????????????con.Open();
????????????SqlCommand?cmd?
=?new?SqlCommand(sqlStr,?con);
????????????cmd.Parameters.Add(
new?SqlParameter("@cate_id",?category));

????????????SqlDataAdapter?sda?
=?new?SqlDataAdapter(sqlStr,con);
????????????sda.SelectCommand?
=?cmd;
????????????DataSet?ds?
=?new?DataSet();
????????????sda.Fill(ds,?
"Procutes");
????????????
return?ds;
????????}

????}

?

數據庫文檔:

?

Code
create?database?temptest
go

create?table?Categories
(
????cate_id?
int?not?null,
????cate_name?
varchar(20)?not?null
)
?
create?table?Procducts
(
????porc_id?
int?not?null,
????cate_id?
int?not?null,
????proc_name?
varchar(20)?not?null
)

insert?into?Categories?values(1,'數碼')
insert?into?Categories?values(2,'書籍')

insert?into?Procducts?values(1,1,'筆記本')
insert?into?Procducts?values(2,1,'數碼相機')
insert?into?Procducts?values(3,1,'手機')
insert?into?Procducts?values(4,1,'PSP')
insert?into?Procducts?values(5,1,'360xbox')
insert?into?Procducts?values(6,2,'Asp.net?C#')
insert?into?Procducts?values(7,2,'VB')
insert?into?Procducts?values(8,2,'Jave')
insert?into?Procducts?values(9,2,'PHP')
insert?into?Procducts?values(10,2,'Ruby')

轉載于:https://www.cnblogs.com/williamwindy/archive/2009/01/06/1370717.html

總結

以上是生活随笔為你收集整理的repeater的嵌套(转+总结)[http://www.cnblogs.com/esshs/archive/2005/04/07/132825.html]的全部內容,希望文章能夠幫你解決所遇到的問題。

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