当前位置: 代码迷 >> ASP.NET >> Repeater嵌套出现反复行
  详细解决方案

Repeater嵌套出现反复行

热度:1432   发布时间:2013-02-25 00:00:00.0
Repeater嵌套出现重复行
我的数据表如下:
id caiDan titleName neiRong

1 新闻类 1号的新闻 122323321adsfd

2 新闻类 2号的新闻 12rrr321adsfd

3 音乐类 2012流行音乐 12天天21adsfd

查询语句“select * from tbCaiDan” 然后绑定给最外层的Repeater1

然后在Repeater1_ItemDataBound里写
C# code
        if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)        {            Repeater Repeater2 = e.Item.FindControl("Repeater2") as Repeater;            String Menu1 = DataBinder.Eval(e.Item.DataItem, "caiDan").ToString();            System.Data.DataView dv = t_dt.DefaultView;            dv.RowFilter = "caiDan='" + Menu1 + "'";            Repeater2.DataSource = dv;            Repeater2.DataBind();        }


最后出来的菜单还是重复 样式如下:
新闻类
--1号的新闻
--2号的新闻
新闻类
--1号的新闻
--2号的新闻
音乐类
--2012流行音乐

为什么会出现重复?怎么去除啊 纠结


------解决方案--------------------------------------------------------
System.Data.DataView dv = t_dt.DefaultView;
dv.RowFilter = "caiDan='" + Menu1 + "'";

这个d_dt哪来的?
------解决方案--------------------------------------------------------
t_dt这个数据源下有重复行
------解决方案--------------------------------------------------------
<!-- 子Repeater -->
<asp:Repeater ID="childRepeater" runat="server" DataSource='<%# ((System.Data.DataRowView)Container.DataItem).Row.GetChildRows("Id") %>'>
<ItemTemplate>
<li>
<input type="checkbox" name="cb_<%=parentId %><%# Container.ItemIndex + 1 %>" />
<%# DataBinder.Eval(Container.DataItem, "[\"Title\"]")%></li>
</ItemTemplate>
</asp:Repeater>
是否父级重复
  相关解决方案