首页
|
新闻资讯
|
网站运营
|
网络编程
|
数据库
|
服务器
|
网页设计
|
图像媒体
|
网络应用
|
搜索优化
|
资源下载
|
动网主机
|
DVBOX
本站内
互联网
ASP论坛
ASP.Net论坛
PHP论坛
.Net
→ 阅读文章
在Repeater中嵌套使用Repeater
作者
:郁郁小蝎
来源
:中国站长学院
阅读 2527 人次 , 2006-2-15 14:31:00
在一般的网站中浏览类别的用户控件通常都位于大多数 ASP.NET 页的左边,它使用户能够按类别快速的查找产品。最近遇到一个客户,因为在他网站上展示的产品并不多,所以要求在原有类别浏览的基础上将产品也加进去。一来更方便,二来加长了左部导航栏的长度使页面更协调。原有的分类导航栏是由Repeater实现的,现在需要在每一个分类下加入该类的商品信息,于是我想到了在原有Repeater中嵌套Repeater。实现界面如下:
前台页面部分:
<
asp:Repeater
id
="rptCategories"
runat
="server"
>
<
HeaderTemplate
>
<
table
width
="100%"
border
="0"
cellspacing
="0"
cellpadding
="0"
>
</
HeaderTemplate
>
<
ItemTemplate
>
<!--
分类名称
-->
<
tr
><
th
>
<%
# DataBinder.
Eval
(Container.DataItem,
"
TypeName
"
)
%>
</
th
></
tr
>
<!--
分类下的产品
-->
<
asp:Repeater
id
="rptProduct"
runat
="server"
>
<
ItemTemplate
>
<
tr
><
td
><
a
href
='ProductInfo.aspx?Id=<%#
DataBinder.Eval(Container.DataItem, "ID") %
>
'>
<%
# DataBinder.
Eval
(Container.DataItem,
"
ProductName
"
)
%>
</
a
></
td
></
tr
>
</
ItemTemplate
>
</
asp:Repeater
>
</
ItemTemplate
>
<
FooterTemplate
>
</
table
>
</
FooterTemplate
>
</
asp:Repeater
>
后台代码部分(部分代码):
//
在绑定分类品名时,绑定分类下的产品
private
void
rptCategories_ItemDataBound(
object
sender, System.Web.UI.WebControls.RepeaterItemEventArgs e)
{
BLL.Products products
=
new
BLL.Products();
if
(e.Item.ItemType
==
ListItemType.Item
||
e.Item.ItemType
==
ListItemType.AlternatingItem)
{
Repeater rptProduct
=
(Repeater) e.Item.FindControl(
"
rptProduct
"
);
//
找到分类Repeater关联的数据项
DataRowView rowv
=
(DataRowView)e.Item.DataItem;
//
提取分类ID
int
CategorieId
=
Convert.ToInt32(rowv[
"
ID
"
]);
//
根据分类ID查询该分类下的产品,并绑定产品Repeater
rptProduct.DataSource
=
products.GetProductsByCategorieId(CategorieId);
rptProduct.DataBind();
}
}
收藏本文
打印本文
论坛讨论
关闭窗口
· 上一篇:
C++编程人员容易犯的10个C#错
· 下一篇:
Project级别的权限控制
·
全面剖析VB.NET(6)
·
和我一起入门Direct3D的VB.net编程
·
C#,深入浅出全接触
·
禁止在TextBox中输入
·
开始 .Net的旅程(二)
关于本站
|
联系我们
|
业务合作
|
客户案例
|
诚聘英才
|
广告合作
|
收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006
Cndw
.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077