Using VS 2008, I have a Repeater control:
<asp:Repeater runat="server" ID="storesRep" DataSourceID="storeSqlDataSource"
OnItemDataBound="StoresRep_ItemDataBound">
<ItemTemplate>
<table style="padding:0px">
<tr>
<td style="width:200px"><asp:Label ID="infoLbl" runat="server">
Choose stores for upload:</asp:Label>
</td>
<td style="width:110px">
<asp:Label ID="storeLbl" runat="server" Text='<%# Bind("Name") %>'>
</asp:Label>
</td>
<td><asp:CheckBox runat="server" ID="storeCheck" /></td>
</tr>
</table>
</ItemTemplate>
</asp:Repeater>
<asp:SqlDataSource ID="storeSqlDataSource" runat="server"
ConnectionString="<%$ ConnectionStrings:someConnectionString %>"
SelectCommand="SELECT [StoreId], [Name] FROM [Store] Order By [Name]">
</asp:SqlDataSource>
Now I would like to display a default text like “No stores found” if data source returns no items from database. Until now I have mostly used GridView where I didn’t have problems because of the EmptyDataText attribute.
You could workaround the fact that
Repeaterdoes not support a inbuilt way to accomplish what you are doing by using theFooterTemplatein conjunction with theOnItemDataBoundevent and showing the footer only when the data source returns no items.Examples on how you can do this can be found at:
Handling Empty Data in an ASP.NET Repeater control
How to show Empty Template in ASP.NET Repeater control?