Repeater嵌套绑定Repeater

Repeater嵌套Repeater的结构:

 cs代码: 

 

Code
 private   void  RpTypeBind()
    {
       
// GetQuestionTypeAndCount() 返回一个datatable
         this .rptypelist.DataSource  =  LiftQuestionCtr.GetQuestionTypeAndCount();                   
        
this .rptypelist.DataBind();
    }
 protected   void  rptypelist_ItemDataBound( object  sender, RepeaterItemEventArgs e)
    {
        // 判断里层repeater处于外层repeater的哪个位置( AlternatingItemTemplate,FooterTemplate,
        // HeaderTemplate,,ItemTemplate,SeparatorTemplate)
        if  (e.Item.ItemType  ==  ListItemType.Item  ||  e.Item.ItemType  ==  ListItemType.AlternatingItem)
            {
                Repeater rep 
=  e.Item.FindControl( " rpquestionlist " as  Repeater; // 找到里层的repeater对象
                DataRowView rowv  =  (DataRowView)e.Item.DataItem; // 找到分类Repeater关联的数据项 
                 int  typeid  =  Convert.ToInt32(rowv[ " qtid " ]);  // 获取填充子类的id 
                rep.DataSource  =  LiftQuestionCtr.GetSomeQuestionsByTypeid(typeid,  2 );
                rep.DataBind();
            }
    }

 

aspx:

table border = " 0 "  cellpadding = " 0 "  cellspacing = " 0 "  style = " margin-bottom: 5px "  width = " 100% " >
    
< asp:Repeater runat = " server "  ID = " rptypelist "  OnItemDataBound = " rptypelist_ItemDataBound " >
        
< ItemTemplate >
            
< tr >
                
< td  class = " fb " >
                    
& nbsp; & nbsp; < a href = " Lists.aspx?Qtid=<%#Eval( " qtid " ) %> " ><% #Eval( " qtypename " %></ a >   < span id = " askCount_15 "
                        
class = " date2 " > [ <% #Eval( " typecount " ) %> ] </ span >
                
</ td >
            
</ tr >
            
< tr >
                
< td >
                    
< div id = " askTop2_15 "   class = " ask_list " >
                        
< asp:Repeater runat = " server "  ID = " rpquestionlist " >
                            
< ItemTemplate >
                                
< a href = " Question.aspx?qid=<%#Eval( " liftquestionid " )%> " >
                                    
<% #Eval( " questiontitle " ) %></ a >< br  />
                            
</ ItemTemplate >
                        
</ asp:Repeater >
                    
</ div >
                
</ td >
            
</ tr >
        
</ ItemTemplate >
    
</ asp:Repeater >
</ table >

 

 

此方法应该适合于repeater嵌套,datalist嵌套。

(datalist嵌套前不久试过,也可以)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值