快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

在Repeater中嵌套使用Repeater

    在一般的网站中浏览类别的用户控件通常都位于大多数 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><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)
\"\"\"\"{
\"\"=new BLL.Products();
\"\"if (e.Item.ItemType == ListItemType.Item ||    e.Item.ItemType == ListItemType.AlternatingItem) 
\"\"\"\"{
\"\"= (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);
\"\"\"\"

\"\"

\"\"

返回类别: 教程
上一教程: asp.net高级教程(五)-实战篇(中)
下一教程: Microsoft .NET与J2EE的比较[E]

您可以阅读与"在Repeater中嵌套使用Repeater"相关的教程:
· 在C#中使用XML指南之读取XML
· 如何使用C#访问POP3服务器
· C#中使用SendMessage
· Repeater控件的分页问题
· 使用 Visual Basic .NET 重载事件处理程序(微软)
    微笑服务 优质保证 索取样品