首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • Repeater嵌套。子控件如何得到父控件中的值 [已结贴,结贴人:yzg614]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • yzg614
    • 等级:
    发表于:2008-05-15 11:34:20 楼主
    <asp:Repeater ID="rpCity" runat="server" OnItemDataBound="rpCity_ItemDataBound">
    <ItemTemplate>
    <div class="box">
            <div class="area_01"> <%#Eval("city_name")%>"> <%#Eval("city_code")%> </div>
        <div class="c">
          <ul>
          <asp:Repeater ID="rpTitle" runat="server">
          <ItemTemplate>
              <li> <a href="http://这里如何取rpCity中的city_code" title=" <%#Eval("HC_NewTitle")%>" target="_blank">
                <div class="txt">
                <%#Eval("HC_NewTitle")%>
                </div>
                </a>
              </li>
          </ItemTemplate>
              </asp:Repeater>
          </ul>
        </div>
    </div>
    </ItemTemplate>
          </asp:Repeater>
    在子rpTitle中如何取父rpCity中的 <%#Eval("city_code")%>的值
    100  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-15 11:40:201楼 得分:5
    <input id="hd1" type="hidden" runat="server" value=' <%# Eval...%>' />

    repeater_databind...

    (( (e....as row).parent.parent as row).findcontrol as ...).value
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-15 11:42:252楼 得分:0
    rpCity的databind里面绑定rpTitle
    像这种潜套数据显示可以这么做
    当然了你也可以在rpCity的rowcommand里面
    上面的方法是初始化一起就出来了
    下面的方法是动态的显示
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-15 11:44:253楼 得分:5
    要把 <%#Eval("city_code")%>值放在一個控件的Text或其他屬性里獲取,比如
    <div class="area_01"> <asp:Label Runat="server" ID="Label1" Text=' <%#Eval("city_name")%>'> </asp:Label>
    </div>
    在後臺你就可以通過findcontrol到那個Label1來得到它的Text了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-15 11:56:474楼 得分:0
    目前想到的方法,请参考

    HTML code
    <asp:Repeater ID="Repeater1" runat="server"> <ItemTemplate> OrderID: <%# Eval("OrderID")%> CustomerID : <asp:Label ID="Label1" runat="server" Text='<%#Eval("CustomerID")%>'></asp:Label> <br /> <asp:Repeater ID="Repeater2" runat="server" DataSource='<%# GetOrderDetails(Convert.ToInt32(Eval("OrderID"))) %>'> <ItemTemplate> &nbsp;&nbsp; 子容器得到CustomerID : <%# ((Label)((RepeaterItem)((Repeater)(((RepeaterItem)Container).NamingContainer)).NamingContainer).FindControl("Label1")).Text %> UnitPrice: <%#Eval("UnitPrice")%> <br /> </ItemTemplate> </asp:Repeater> <br /> </ItemTemplate> </asp:Repeater>


    C# code
    private void BindRepeater() { SqlConnection cn = new SqlConnection(@"server=.\SQLExpress;uid=sa;pwd=;database=Northwind"); SqlDataAdapter da = new SqlDataAdapter("select top 10 orderid, CustomerID, OrderDate from Orders", cn); DataSet ds = new DataSet(); cn.Open(); da.Fill(ds); cn.Close(); Repeater1.DataSource = ds.Tables[0].DefaultView; Repeater1.DataBind(); } protected DataTable GetOrderDetails(int orderID) { SqlConnection cn = new SqlConnection(@"server=.\SQLExpress;uid=sa;pwd=;database=Northwind"); SqlDataAdapter da = new SqlDataAdapter("select ProductID, UnitPrice from [Order Details] where orderid = @orderid", cn); da.SelectCommand.Parameters.AddWithValue("@orderid", orderID); DataSet ds = new DataSet(); cn.Open(); da.Fill(ds); cn.Close(); return ds.Tables[0]; } protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { BindRepeater(); } }
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-15 12:00:575楼 得分:90
    也可以简单一点..
    HTML code
    <asp:Repeater ID="Repeater1" runat="server"> <ItemTemplate> OrderID: <%# Eval("OrderID")%> CustomerID : <asp:Label ID="Label1" runat="server" Text='<%#Eval("CustomerID")%>'></asp:Label> <br /> <asp:Repeater ID="Repeater2" runat="server" DataSource='<%# GetOrderDetails(Convert.ToInt32(Eval("OrderID"))) %>'> <ItemTemplate> &nbsp;&nbsp; 子容器得到CustomerID : <%# ((Label)((RepeaterItem)(Container.NamingContainer.NamingContainer)).FindControl("Label1")).Text %> UnitPrice: <%#Eval("UnitPrice")%> <br /> </ItemTemplate> </asp:Repeater> <br /> </ItemTemplate> </asp:Repeater>
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • avrilxu
    • 等级:
    发表于:2008-05-15 12:50:576楼 得分:0
    http://www.lokcore.com/avrilxu/article.asp?id=5
    repeater使用方法详解
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    世纪乐知(北京)网络技术有限公司 版权所有 京 ICP 证 020026 号
    Copyright © 2000-2007, CSDN.NET, All Rights Reserved