Repeater 控件 当数据源没有数据的时候显示 暂无数据 的两种方式

第一种:现在前台给Repeater控件外面的div加一个runat=”server”  然后在cs后台判断数据源是否为空, 是的话就修改这个前台div的InnerText或者是InnerHtml 即可 

//后台判断是否为空 
 if (ds.Tables[0].Rows.Count <= 0)
                {
                    asd.InnerText = "暂时没有数据";
                    //asd.InnerHtml ="
<center><br><br><br><br><img src='/images/hint.png' alt='暂无数据'/><br>查无数据<br><br><br><br></center>";
                }
                Repeater1.DataSource = ds;
                Repeater1.DataBind();
//前台代码
 <div id="asd" runat="server">
        <asp:Repeater ID="Repeater1" runat="server">
        <ItemTemplate>
        <%# Eval("title") %>
        </ItemTemplate>
        </asp:Repeater>
    </div>

 

第二种,直接在 Repeater控件的FooterTemplate里面扩展

<asp:Repeater ID="RptrA" runat="server">         
    <ItemTemplate>           
    </ItemTemplate>        
    <FooterTemplate>           
    <asp:Label ID="lblEmpty"      
        Text="<center><br><br><br><br><img src='/images/hint.png' alt='暂无数据'/><br>查无数据<br><br><br><br></center>" runat="server"      
        Visible='<%#bool.Parse((RptrA.Items.Count==0).ToString())%>'>        
    </asp:Label>        
    </FooterTemplate>            
    </asp:Repeater>  

 

 

两种的效果都是一样的

效果如下

image

posted @ 2013-07-30 16:52  梨花驿路  阅读(2564)  评论(0编辑  收藏  举报