首页  ·  知识 ·  云计算
Asp.net嵌套数据绑定repeater主从数据嵌套
网友   http://hi.baidu.com/rose%BE%B4/blog/item/96f17c424ae3d51872f05d7d.html  综合  编辑:德仔   图片来源:网络
a 自动获取数据库中的主从关系数据,以下是获取省份及省份对应的城市,代码如下: color: #00
a

自动获取数据库中的主从关系数据,以下是获取省份及省份对应的城市,代码如下:

<asp:repeater ID="Repeater1" runat="server">
        
<ItemTemplate >
            
<span style ="font-weight :bold "><%#Eval ("pname") %></span>
            
<ul>
                
<asp:Repeater ID="detal" runat ="server" DataSource ='<%#GetCity(Eval("pid").ToString()) %>'>
                    
<ItemTemplate >
                        
<li><%#Eval("city_name") %></li>
                    
</ItemTemplate>
                
</asp:Repeater>
            
</ul>
        
</ItemTemplate>
    
</asp:repeater>

 

重点:DataSource ='<%#Getawd(Eval("pid").ToString()) %>'   调用GetCity方法获取子类

protected void Page_Load(object sender, EventArgs e)
    
{
        
if (!Page.IsPostBack)
             BindGrid();
     }

    
//获取大类的类别
    protected void BindGrid()
    
{
        
string cmdText = "select pid, pname from pro";
         DataTable dt
= vc.GetDataTable(cmdText );
         Repeater1.DataSource
= dt;
         Repeater1.DataBind();
     }

    
//获取小类内容
    protected DataTable GetCity(string   id)
    
{
        
string cmdText = "select city_name from city where promo_id = " + id + "";
         DataTable dt
= vc.GetDataTable(cmdText);
        
return dt;
     }

 

法二:在第一个Repeater的ItemDataBound事件中绑定第二个Repeater,HTML代码中第一个Repeater不赋予DataSource

protected void repeatTitle_ItemDataBound(object sender, RepeaterItemEventArgs e)
    
{

             DataRowView dr
= (DataRowView)e.Item.DataItem;
             DataTable mydt
= GetCity(dr[0].ToString());
            
if (mydt.Rows.Count > 0)
            
{
                 Repeater myRepeat
= (Repeater)e.Item.FindControl("repeatCont");
                 myRepeat.DataSource
= mydt;
                 myRepeat.DataBind();
                 mydt.Dispose();
             }

            
else
            
{
                 e.Item.Visible
= false;  //没有数据时不显示
             }

     }

本文作者:网友 来源: http://hi.baidu.com/rose%BE%B4/blog/item/96f17c424ae3d51872f05d7d.html
CIO之家 www.ciozj.com 微信公众号:imciow
   
免责声明:本站转载此文章旨在分享信息,不代表对其内容的完全认同。文章来源已尽可能注明,若涉及版权问题,请及时与我们联系,我们将积极配合处理。同时,我们无法对文章内容的真实性、准确性及完整性进行完全保证,对于因文章内容而产生的任何后果,本账号不承担法律责任。转载仅出于传播目的,读者应自行对内容进行核实与判断。请谨慎参考文章信息,一切责任由读者自行承担。
延伸阅读