【问题标题】:Repeat header row after each row in a repeater在转发器中的每一行之后重复标题行
【发布时间】:2015-09-25 21:40:52
【问题描述】:

如何在Repeator的每一行之后重复标题行?

示例代码:

<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>

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

【问题讨论】:

  • 您的意思是要在每个实际数据行之后(之前?)“列 1”、“列 2”和“列 3”?

标签: asp.net header repeater tableheader


【解决方案1】:

在转发器中,您有一个 HeaderTemplate 并且该内容生成一次,然后您有 ItemTemplate,它的生成次数与数据,最后你有 FooterTemplate,它也是在所有行完成后生成一次。

要在每个内容行之前重复“标题行”,只需将“标题”&lt;tr&gt; 移动到&lt;ItemTemplate&gt;

<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>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多