Repeat 用起来蛮方便的,可是没有EmptyTemplate ,当绑定的对象没有数据的时候,就会什么都不显示,刚好看到几个方法,其实都是一样的,只是写法不同而已,记录下哈。
一
<asp:Repeater ID="RptrA" runat="server">
<ItemTemplate>
<!-- Add your Item Template Here -->
</ItemTemplate>
<FooterTemplate>
<asp:Label ID="lblEmpty"
Text="no result" runat="server"
Visible='<%#bool.Parse((RptrA.Items.Count==0).ToString())%>'>
</asp:Label>
</FooterTemplate>
</asp:Repeater>
<ItemTemplate>
<!-- Add your Item Template Here -->
</ItemTemplate>
<FooterTemplate>
<asp:Label ID="lblEmpty"
Text="no result" runat="server"
Visible='<%#bool.Parse((RptrA.Items.Count==0).ToString())%>'>
</asp:Label>
</FooterTemplate>
</asp:Repeater>
//--------------------------------------------------------------------------------------------------------------
二
<asp:Repeater ID="rpList" runat="server" EnableViewState="false">
<HeaderTemplate>
<%
if (rpList.Items.Count == 0)
{
%><div id="dNoData">No Data</div><%
}
else {
%>
<table>
<tr>
<th>XXX1</th>
<th>XXX2</th>
<th>XXX3</th>
<th>XXX4</th>
<th>XXX5</th>
<th>XXX6</th>
<th>XXX7</th>
</tr>
<%
} %>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td id="tdContainerNo" runat="server" ><%#Eval("ContainerNo")%></td>
<td><%#Eval("X1")%></td>
<td><%#Eval("X2")%></td>
<td><%#Eval("X3")%></td>
<td><%#Eval("X4")%></td>
<td><%#Eval("X5")%></td>
<td id="tdtotal" runat="server"><%#Eval("X6")%></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
<HeaderTemplate>
<%
if (rpList.Items.Count == 0)
{
%><div id="dNoData">No Data</div><%
}
else {
%>
<table>
<tr>
<th>XXX1</th>
<th>XXX2</th>
<th>XXX3</th>
<th>XXX4</th>
<th>XXX5</th>
<th>XXX6</th>
<th>XXX7</th>
</tr>
<%
} %>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td id="tdContainerNo" runat="server" ><%#Eval("ContainerNo")%></td>
<td><%#Eval("X1")%></td>
<td><%#Eval("X2")%></td>
<td><%#Eval("X3")%></td>
<td><%#Eval("X4")%></td>
<td><%#Eval("X5")%></td>
<td id="tdtotal" runat="server"><%#Eval("X6")%></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
以前搞的麻烦事没有想到可以根据rpList.Items.Count 来判断,真实bs自己。
- - 。