repeater嵌套

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default"  %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>无标题页</title>
</head>
<body>
    <form id="form1" runat="server">
  <asp:Repeater ID="repeaterParent" runat="server"  OnItemDataBound="repeaterParent_ItemDataBound">
        <ItemTemplate>
           <table width="186" border="1" class="MenuTB">
               <tr>
                  <td style="cursor:pointer;">
                      <img src="image/3.gif" alt="" / ><%#Eval("orderid") %>
                  </td>
                   <td>
                           <asp:Repeater ID="repeaterMinMenu" runat="server">
                                <ItemTemplate>
                                <table   width="186" border="1"  >
                                <tr><td>
                                        <a href="<%#Eval("customerid") %>" target="frmContent"><%#Eval("CustomerID ")%></a>
                                 </td></tr>
                                 <tr><td>
                                        <a href="<%#Eval("customerid") %>" target="frmContent"><%#Eval("EmployeeID ")%></a>
                                 </td></tr>
                                 <tr><td>
                                        <a href="<%#Eval("customerid") %>" target="frmContent"><%#Eval("OrderDate ")%></a>
                                 </td></tr>
                                 </table>
                               </ItemTemplate>
                            </asp:Repeater>

                    </td>
                </tr>
            </table>
        </ItemTemplate>
    </asp:Repeater>
    </form>
</body>
</html>


using System;

using System.Data;

using System.Configuration;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

using System.Data.SqlClient;


public partial class _Default : System.Web.UI.Page 

{

    SqlConnection sqlcon;

    string strCon = "Data Source=(local);Database=master;Uid=sa;Pwd=sa";


    public void Page_Load(object sender, EventArgs e)

    {

        string sqlstr = "select * from test";

        sqlcon = new SqlConnection(strCon);

        SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);

        DataSet myds = new DataSet();

        sqlcon.Open();

        myda.Fill(myds, "表");

        repeaterParent.DataSource = myds;

        repeaterParent.DataBind();

        sqlcon.Close();


    }


    protected void repeaterParent_ItemDataBound(object sender, RepeaterItemEventArgs e)

    {

        if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)

        {

            int MenuId = Convert.ToInt32(((DataRowView)e.Item.DataItem).Row["orderid"]);


            Repeater repeaterMinMenu = (Repeater)e.Item.FindControl("repeaterMinMenu");


            if (repeaterMinMenu != null)

            {

                string SqlGetMinMenu = "select * from test where orderid=" + MenuId;

                sqlcon = new SqlConnection(strCon);

                SqlDataAdapter myda = new SqlDataAdapter(SqlGetMinMenu, sqlcon);

                DataSet myds = new DataSet();

                sqlcon.Open();

                myda.Fill(myds, "表");

                repeaterMinMenu.DataSource = myds;

                repeaterMinMenu.DataBind();

                sqlcon.Close();


            }

        }

    }

}

 if exists(select * from sysobjects where name='test')
    drop table test
    go
    create table test
    (
    orderid int,
    CustomerID varchar(12),
    EmployeeID varchar(12),
    OrderDate varchar(12)
    )

    insert into test values(1,'1','1','1');
    insert into test values(2,'2','2','2');
    insert into test values(3,'3','3','3');
    insert into test values(4,'5','51','31');
    insert into test values(5,'134','3451','sdfh1');
    select * from test
原文地址:https://www.cnblogs.com/jcomet/p/1288903.html