从数据库获得的数据格式如下
Team_NO    Member_NameTeam1         Name1
Team1         Name2
Team1         Name3
Team2         Name4
Team2         Name5
  。            。
  。            。请问用Repeater如何变成下列格式Team1
Name1
Name2
Name3Team2
Name4
Name5
  。
  。下面是我的代码:
<asp:Repeater id=Repeater1 runat="server">
    <HeaderTemplate>
        <table>
            <tr>
                <td> <%# DataBinder.Eval(Container.DataItem, "Team_NO") > </td>
            </tr>
    </HeaderTemplate>
             
    <ItemTemplate>
            <tr>
                <td> <%# DataBinder.Eval(Container.DataItem, "Member_Name") %> </td>
            </tr>
   </ItemTemplate>
             
   <FooterTemplate>
        </table>
   </FooterTemplate>
</asp:Repeater>结果:
Name1
Name2
Name3
Name4
Name5
  。
  。

解决方案 »

  1.   

    用嵌套Repeater就行了,一个父的一个子的
      

  2.   

    试一下:aspx代码:<asp:Repeater id="Repeater1" runat="server">
    <HeaderTemplate>
    <table>
    </HeaderTemplate>
    <ItemTemplate>
    <asp:Literal ID="ShowContent" Runat="server"></asp:Literal>
    </ItemTemplate>
    <FooterTemplate>
    </table>
    </FooterTemplate>
    </asp:Repeater>后台编码 .CS内容:public class testReapter : System.Web.UI.Page
    {
    protected System.Web.UI.WebControls.Repeater Repeater1;
    private string OldTeam_NO = "";

    private void Page_Load(object sender, System.EventArgs e)
    {
    // 在此处放置用户代码以初始化页面
    } #region Web 窗体设计器生成的代码
    override protected void OnInit(EventArgs e)
    {
    //
    // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
    //
    InitializeComponent();
    base.OnInit(e);
    }

    /// <summary>
    /// 设计器支持所需的方法 - 不要使用代码编辑器修改
    /// 此方法的内容。
    /// </summary>
    private void InitializeComponent()
    {    
    this.Load += new System.EventHandler(this.Page_Load);
    this.Repeater1.ItemDataBound +=new RepeaterItemEventHandler(Repeater1_ItemDataBound);
    }
    #endregion private void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
    {
    DataRowView dataItem = e.Item.DataItem as DataRowView;
    if(e.Item.ItemType = ListItemType.AlternatingItem||e.Item.ItemType = ListItemType.Item)
    {
    Literal ShowContent = (Literal)e.Item.FindControl("ShowContent");
    ShowContent.Text = "";
    if(OldTeam_NO==""||OldTeam_NO!=dataItem["Team_NO"].ToString())
    {
    OldTeam_NO = dataItem["Team_NO"].ToString();
    ShowContent.Text += "<tr><td>" + OldTeam_NO + "</td></tr>";
    }
    ShowContent.Text += "<tr><td>" + dataItem["Member_Name"].ToString(); + "</td></tr>";

    }
    }
    }注意前面有一个私有全局变量:private string OldTeam_NO = "";