将 Header 添加到 asp.net 中的转发器
Adding Header to the repeater in asp.net
如何将header添加到Repeater
控件中?我想为提到的每个列添加 header
下面是我的转发器控件
<asp:Repeater ID="rptSingleSapDataInfo" runat="server">
<ItemTemplate>
<div class="widget-box widget-blue">
<div class="widget-main widget-repeater-horizontal">
<div class="pull-left">
<asp:Label ID="lblSapId" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "SAP_ID") %>' CssClass="labelbold"></asp:Label>
</div>
<div class="pull-right">
<asp:Label ID="lblState" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "STATE") %>' CssClass="labelbold"></asp:Label>
</div>
<div class="pull-right">
<asp:Label ID="lblNLat" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "NEW_LATITUDE") %>' CssClass="labelbold"></asp:Label>
</div>
<div class="pull-right">
<asp:Label ID="lblNLong" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "NEW_LONGITUDE") %>' CssClass="labelbold"></asp:Label>
</div>
<div class="pull-right">
<asp:Label ID="lblOLat" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "OLD_LATITUDE") %>' CssClass="labelbold"></asp:Label>
</div>
<div class="pull-right">
<asp:Label ID="lblOLong" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "OLD_LONGITUDE") %>' CssClass="labelbold"></asp:Label>
</div>
<div class="pull-right1" style="padding: 5px 5px 5px 20px;">
<asp:Label ID="lblRemarks" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "REMARKS") %>' CssClass="labelbold"></asp:Label>
</div>
<div class="pull-right">
<asp:Label ID="lblCreatedBy" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "CREATED_BY") %>' CssClass="labelbold"></asp:Label>
</div>
<div class="pull-right">
<asp:Label ID="lblCreatedDate" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "CREATED_DATE", "{0:dd-MM-yyyy}") %>' CssClass="labelbold"></asp:Label>
</div>
</div>
</div>
</ItemTemplate>
</asp:Repeater>
您已经在使用 ItemTemplate so use the HeaderTemplate 添加 header:
<asp:Repeater ID="rptSingleSapDataInfo" runat="server">
<HeaderTemplate>
My header
</HeaderTemplate>
<ItemTemplate>
<div class="widget-box widget-blue">
...
</div>
</ItemTemplate>
</asp:Repeater>
据我了解你的问题使用 Header 模板
<asp:Repeater runat="server" ID="rowRepeater" OnItemDataBound="rowRepeater_ItemBound">
<HeaderTemplate>
<table>
<tr>
<asp:Repeater runat="server" ID="headerRepeater">
<ItemTemplate>
<th>
<%# Container.DataItem %>
</th>
</ItemTemplate>
</asp:Repeater>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td><asp:Label runat="server" ID="lblUserName" Text='<%# Eval("Key") %>' /></td>
<asp:Repeater runat="server" ID="columnRepeater">
<ItemTemplate>
<td>
<asp:HiddenField runat="server" ID="hfRoleIndex" Value='<%# Container.ItemIndex %>' />
<asp:CheckBox runat="server" ID="cbColumnValue" Checked='<%# Container.DataItem %>' OnCheckedChanged="cbColumnValue_CheckedChanged" AutoPostBack="true" />
</td>
</ItemTemplate>
</asp:Repeater>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
这里是参考link
Repeater and add columns to header and itemtemplate on page load
它会帮助你
如何将header添加到Repeater
控件中?我想为提到的每个列添加 header
下面是我的转发器控件
<asp:Repeater ID="rptSingleSapDataInfo" runat="server">
<ItemTemplate>
<div class="widget-box widget-blue">
<div class="widget-main widget-repeater-horizontal">
<div class="pull-left">
<asp:Label ID="lblSapId" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "SAP_ID") %>' CssClass="labelbold"></asp:Label>
</div>
<div class="pull-right">
<asp:Label ID="lblState" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "STATE") %>' CssClass="labelbold"></asp:Label>
</div>
<div class="pull-right">
<asp:Label ID="lblNLat" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "NEW_LATITUDE") %>' CssClass="labelbold"></asp:Label>
</div>
<div class="pull-right">
<asp:Label ID="lblNLong" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "NEW_LONGITUDE") %>' CssClass="labelbold"></asp:Label>
</div>
<div class="pull-right">
<asp:Label ID="lblOLat" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "OLD_LATITUDE") %>' CssClass="labelbold"></asp:Label>
</div>
<div class="pull-right">
<asp:Label ID="lblOLong" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "OLD_LONGITUDE") %>' CssClass="labelbold"></asp:Label>
</div>
<div class="pull-right1" style="padding: 5px 5px 5px 20px;">
<asp:Label ID="lblRemarks" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "REMARKS") %>' CssClass="labelbold"></asp:Label>
</div>
<div class="pull-right">
<asp:Label ID="lblCreatedBy" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "CREATED_BY") %>' CssClass="labelbold"></asp:Label>
</div>
<div class="pull-right">
<asp:Label ID="lblCreatedDate" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "CREATED_DATE", "{0:dd-MM-yyyy}") %>' CssClass="labelbold"></asp:Label>
</div>
</div>
</div>
</ItemTemplate>
</asp:Repeater>
您已经在使用 ItemTemplate so use the HeaderTemplate 添加 header:
<asp:Repeater ID="rptSingleSapDataInfo" runat="server">
<HeaderTemplate>
My header
</HeaderTemplate>
<ItemTemplate>
<div class="widget-box widget-blue">
...
</div>
</ItemTemplate>
</asp:Repeater>
据我了解你的问题使用 Header 模板
<asp:Repeater runat="server" ID="rowRepeater" OnItemDataBound="rowRepeater_ItemBound">
<HeaderTemplate>
<table>
<tr>
<asp:Repeater runat="server" ID="headerRepeater">
<ItemTemplate>
<th>
<%# Container.DataItem %>
</th>
</ItemTemplate>
</asp:Repeater>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td><asp:Label runat="server" ID="lblUserName" Text='<%# Eval("Key") %>' /></td>
<asp:Repeater runat="server" ID="columnRepeater">
<ItemTemplate>
<td>
<asp:HiddenField runat="server" ID="hfRoleIndex" Value='<%# Container.ItemIndex %>' />
<asp:CheckBox runat="server" ID="cbColumnValue" Checked='<%# Container.DataItem %>' OnCheckedChanged="cbColumnValue_CheckedChanged" AutoPostBack="true" />
</td>
</ItemTemplate>
</asp:Repeater>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
这里是参考link Repeater and add columns to header and itemtemplate on page load
它会帮助你