一天一记之2013-01-25 Repeater为空时显示"暂无数据"

我想大部分人都知道Repeater没有数据的时候显示表头,就是在<FooterTemplate>加个lablel,通过Items.Count==0来控制label的显示和隐藏。例如:

<FooterTemplate>
  <asp:Label ID="lblEmpty" Text=" 暂无数据" runat="server" Visible='<%#RepeaterWorks.Items.Count==0%>'></asp:Label>
</FooterTemplate>

我也碰到了这也的问题,但是用这个老是不行,后来才知道是后台往Repeater绑定数据的时候出问题了。后台绑定数据:

List<对象> list = GetData();

if(list!=null)

{

  rpt.DataSource=list;

  rpt.DataBind();

}

else

{

  list = new List<对象>();

  rpt.DataSource=list;

  rpt.DataBind();

}

这也绑定数据,你在前台写上rpt.Items.Count==0才可以控制显示隐藏"暂无数据"和Repeater的表头。原因就是list为null的时候Repeater是不会加载FooterTemplate的。

希望对大家有帮助,我也是纠结了老半天,不知道什么原因。。。

posted @ 2013-01-25 10:47  Christopher—高  阅读(242)  评论(0编辑  收藏  举报