解决方案 »
- 又一个项目中棘手的问题!
- asp.net 如何实现图片切换.就象这个网站上的那样http://www.liyuan.gov.cn/default.htm
- url的问题
- 大家帮个忙吧 上海-山东济南 2月17日 T106 祝大家春节快乐!
- asp.net办公自动化系统开发实例导航(vb.net编程篇) 的源代码 ,谢谢
- 在Ajax.AjaxMethod中无法使用web.config定义的AppSettings ?
- 请问如何将int类型转换为string类型
- 关于C语言一个简单问题,关于Printf函数的问题
- 用WebBrowser打印网页的问题
- 再帮帮忙看看
- 问个很sb的问题
- rdlc报表设计时出现的问题
在你的判断条件的外面。最好在内层repeater绑定完后做下处理
rphhydt.DataBind();
后面加上 dshhydt.Clear();
protected void rpcitylist_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
//省列表中只显示综合排名前20位商家,如想看更多请点击城市右侧更多或点击上方城市
DataSet dshhydt = new DataSet();
//判断里层repeater处于外层repeater的哪个位置( AlternatingItemTemplate,FooterTemplate,
//HeaderTemplate,,ItemTemplate,SeparatorTemplate)
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
Repeater rphhydt = e.Item.FindControl("rphhydtlist") as Repeater;//找到里层的repeater对象
Panel plair = e.Item.FindControl("plair") as Panel;
Panel plhae = e.Item.FindControl("plhae") as Panel;
Label lalair = e.Item.FindControl("labEmpty") as Label;
DataRowView rowv = (DataRowView)e.Item.DataItem;//找到分类Repeater关联的数据项
int cid = Convert.ToInt32(rowv["id"]); //获取填充子类的id只要是父级Repeater查出来的列都可在这里写
dshhydt = new WebHelper.ClassDB().ReDataSetTop("Adv_Users", "CityID='" + cid + "' and State=1", "TravelName,QQ,DisplayName", "id desc", "20");
rphhydt.DataSource = dshhydt;
rphhydt.DataBind();
dshhydt.Clear();
if (rphhydt.Items.Count == 0)
{
plair.Visible = true;
plhae.Visible = false;
}
else
{
plair.Visible = false;
plhae.Visible = true;
}
}
}
如果数据库里确实有数据的,那就检查下内层repeater的绑定条件是否正确。
{
Repeater rphhydt = e.Item.FindControl("rphhydtlist") as Repeater;
}
根据内部的数据源,设置visible
可以放一个PlaceHolder 里面放任意的html
<asp:PlaceHolder ID="PlaceHolder_PicturesListEmpty" runat="server" Visible='<%#bool.Parse((rpcitylist.Items.Count!=0).ToString()) %>'>
一旦Repeater嵌套我也不知道该怎么弄了.