在转发器中的每一行之后重复 header 行

Repeat header row after each row in a repeater

如何在每行 Repeator 之后重复 header 行?

示例代码:

<asp:Repeater ID="repeter1" runat="server">
                    <HeaderTemplate>
                        <table style="table-layout: fixed; width:100%;" >
                            <tr>
                                <th>Column 1</th>
                                <th>Column 2 </th>
                                <th>Column 3</th>
                            </tr>
                    </HeaderTemplate>
                    <ItemTemplate>
                        <tr>
                            <td>
                                <asp:Label ID="lbl1" runat="server"><%#DataBinder.Eval(Container.DataItem, "column1")%></asp:Label></td>
                            <td>
                                <asp:Label ID="lbl2" runat="server"><%#DataBinder.Eval(Container.DataItem, "column2")%></asp:Label></td>
                            <td>
                                <asp:Label ID="lbl3" runat="server"><%#DataBinder.Eval(Container.DataItem, "column3")%></asp:Label></td>
                        </tr>
                        </ItemTemplate>
                    <FooterTemplate>
                        </table>
                    </FooterTemplate>
                </asp:Repeater>

有人可以告诉我如何在中继器的每行结果后放置 header 吗?

在转发器中,你有一个 HeaderTemplate 并且该内容生成一次,然后你有 ItemTemplate,它已生成有多少行数据,最后你就有了FooterTemplate,在所有行都完成后,它也会生成一次。

要在每个内容行之前重复您的 "header row",只需将您的 "header" <tr> 移动到 <ItemTemplate>:

<asp:Repeater ID="repeter1" runat="server">
   <HeaderTemplate>
      <table style="table-layout: fixed; width:100%;" >
   </HeaderTemplate>
   <ItemTemplate>
         <tr>
           <th>Column 1</th>
           <th>Column 2</th>
           <th>Column 3</th>
         </tr>
         <tr>
           <td>
              <asp:Label ID="lbl1" runat="server"><%#DataBinder.Eval(Container.DataItem, "column1")%></asp:Label></td>
           <td>
              <asp:Label ID="lbl2" runat="server"><%#DataBinder.Eval(Container.DataItem, "column2")%></asp:Label></td>
           <td>
              <asp:Label ID="lbl3" runat="server"><%#DataBinder.Eval(Container.DataItem, "column3")%></asp:Label></td>
         </tr>
    </ItemTemplate>
    <FooterTemplate>
      </table>
    </FooterTemplate>
</asp:Repeater>