repeater三级嵌套绑定
<asp:Repeater ID="rpt1" runat="server" onitemdatabound="rpt1_ItemDataBound"> <HeaderTemplate> <table width=400 cellpadding=0 cellspacing=0></HeaderTemplate> <ItemTemplate><tr> <td><font color=black style="font-size: medium; color: #000000"><b><%# DataBinder.Eval(Container.DataItem,"CategoryName")%></b></font></td></tr> <tr><td align=right> <asp:Repeater ID="rpt2" runat="server"> <HeaderTemplate> <table width=360 align=center cellpadding=0 cellspacing=0> </HeaderTemplate> <ItemTemplate> <tr> <td align=left width=200 style="color: #000080; text-decoration: none; font-family: Calibri;"><font color=black>+</font><%# DataBinder.Eval(Container.DataItem,"CategoryName")%></td> <td width=80 align=center> <a href=ProductSort.aspx?type=1&id=<%# DataBinder.Eval(Container.DataItem,"ID")%>>修改</a></td> <td width=80 align=center> <a href=ProductSort.aspx?type=2&id=<%# DataBinder.Eval(Container.DataItem,"ID")%>>删除</a> </td> </tr> <tr> <td align=right colspan=3> <asp:Repeater ID="rpt3" runat="server"> <HeaderTemplate> <table width=320 align=center cellpadding=0 cellspacing=0> </HeaderTemplate> <ItemTemplate> <tr> <td align=left width=160 style="color: #000080; text-decoration: none; font-family: Calibri;"><font color=black>-</font><%# DataBinder.Eval(Container.DataItem,"CategoryName")%></td> <td width=80 align=center> <a href=ProductSort.aspx?type=1&id=<%# DataBinder.Eval(Container.DataItem,"ID")%>>修改</a> </td> <td width=80 align=center> <a href=ProductSort.aspx?type=2&id=<%# DataBinder.Eval(Container.DataItem,"ID")%>>删除</a> </td> </tr> </ItemTemplate> <FooterTemplate> </table> </FooterTemplate> </asp:Repeater> </td> </tr> <tr> </tr> </ItemTemplate> <FooterTemplate> </table> </FooterTemplate> </asp:Repeater> </td> </tr> <td height=15px; style="border-style:none;"> </td> </ItemTemplate> <FooterTemplate> </table> </FooterTemplate> </asp:Repeater>
后台。aspx.cs
protected void rpt1_ItemDataBound(object sender, RepeaterItemEventArgs e) { if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { Repeater rpt2 = (Repeater)e.Item.FindControl("rpt2"); //找到分类Repeater关联的数据项 DataRowView rowv = (DataRowView)e.Item.DataItem; rpt2.ItemDataBound += new RepeaterItemEventHandler(rpt2_ItemDataBound); //最最重要的一句 //提取分类ID cid = Convert.ToInt32(rowv["ID"]); //根据分类ID查询该分类下的产品,并绑定产品Repeater rpt2.DataSource = Pcategory.getP(cid);//数据绑定 rpt2.DataBind(); } } protected void rpt2_ItemDataBound(object sender, RepeaterItemEventArgs e) { if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { Repeater rpt3 = (Repeater)e.Item.FindControl("rpt3"); //找到分类Repeater关联的数据项 DataRowView rowvv = (DataRowView)e.Item.DataItem; //提取分类ID cid2 = Convert.ToInt32(rowvv["ID"]); //根据分类ID查询该分类下的产品,并绑定产品Repeater rpt3.DataSource = getrpt3(cid, cid2);//数据绑定 rpt3.DataBind(); } }
repeater三级嵌套绑定的更多相关文章
- 在Repeater中嵌套使用Repeater
在一般的网站中浏览类别的用户控件通常都位于大多数 ASP.NET 页的左边,它使用户能够按类别快速的查找产品.最近遇到一个客户,因为在他网站上展示的产品并不多,所以要求在原有类别浏览的基础上将产品也加 ...
- 手机web开发Repeater四层嵌套
最近有朋友想让我给他做个手机上页面,页面功能是显示省--市--区--门店信息,这种层级关系的数据,首先来看看效果: 我想现在的手机都是智能机了对于普通的asp.net页面开发应该没什么两样,不过最终开 ...
- (转)在Repeater中嵌套使用Repeater
在一般的网站中浏览类别的用户控件通常都位于大多数 ASP.NET 页的左边,它使用户能够按类别快速的查找产品.最近遇到一个客户,因为在他网站上展示的产品并不多,所以要求在原有类别浏览的基础上将产品也加 ...
- DataList嵌套绑定例子
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="DataList控件.asp ...
- QFramework 使用指南 2020 (四):脚本生成(2)ViewController 与 ViewController 嵌套绑定
在上一篇,我们学习了,脚本生成的基本使用. 在这一篇,我们试着深入,聊聊脚本生成给我们带来的便利. 脚本生成的便利 首先,我们要知道,在 Unity 的游戏世界中都是以 GameObject 为单位的 ...
- 关于Repeater嵌套绑定的问题
前台代码: <div id="firstpane" class="menu_list"> <asp:Repeat ...
- Repeater嵌套绑定Repeater
前台Html代码 <asp:Repeater runat="server" ID="rpList" OnItemDataBound="rpLis ...
- 转:Repeater嵌套绑定Repeater以及内层调用外层数据
<table border=" style="margin-bottom: 5px" width="100%"> <asp:Repe ...
- DataList与Repeater嵌套绑定
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="home.aspx.cs&quo ...
随机推荐
- Lesson 4 An existing trip
Text I have just received a letter from my brother,Tim. He is in Australia. He has been there for si ...
- Functional Programming without Lambda - Part 1 Functional Composition
Functions in Java Prior to the introduction of Lambda Expressions feature in version 8, Java had lon ...
- 跟我一起数据挖掘(21)——redis
什么是Redis Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起,Redis的开发工 ...
- WinRAR 4.20 beta2 key!注册文件 注册码
WinRAR 4.20 beta2 key!注册文件 注册码 WinRAR 4.20 beta2注册文件 WinRAR 4.20 beta2 working key ================= ...
- C#学习系列-文章导航
C#学习系列-.NET体系结构 C#学习系列-类与结构的区别 C#学习系列-String与string的区别 C#学习系列-抽象方法与虚拟方法的区别 C#学习系列-out与ref的区别 C#学习系列- ...
- iOS-几大框架的介绍
1.Objective-C之Foundation框架 概述 我们前面的章节中就一直新建Cocoa Class,那么Cocoa到底是什么,它和我们前面以及后面要讲的内容到底有什么关系呢?Objectiv ...
- WPF入门教程系列十九——ListView示例(一)
经过前面的学习,今天我做一个比较综合的WPF程序示例,主要包括以下功能: 1) 查询功能.从数据库(本地数据库(local)/Test中的S_City表中读取城市信息数据,然后展示到WPF的Windo ...
- Apk去掉签名以及重新签名的方法
Android开发中很重要的一部就是用自己的密钥给Apk文件签名,不经过签名的Apk文件一般是无法安装的,就算装了最后也是失败. 网上流传的"勾选允许安装未知来源的应用"其实跟签不 ...
- C语言static
1. static 变量 静态变量的类型说明符是static. 静态变量当然是属于静态存储方式,但是属于静态存储方式的量不一定就是静态变量. 例如外部变量虽属于静态存储方式,但不一定是静态变量,必须由 ...
- 前端:圆图头像制作--border-radius : 100%
异常处理汇总-前端系列 http://www.cnblogs.com/dunitian/p/4523015.html border-radius : 100% border-radius: 6px; ...