El GridView
tiene un template llamado EmtpyDataTemplate
. Colocamos ahí un texto que diga: “No existen registros” y aparecerá cuando después del DataBind
el GridView
regrese vacío.
El DataList
no cuenta con dicho template.
Para resolver este problema, simplemente coloca un Label
al lado de tu DataList
, como este:
- <asp:Label ID="Mensaje" runat="server" CssClass="Validador" Text="No existen registros" Visible="False">
En mi ejemplo tengo unos DropDownLists
que permiten elegir el mes y el año, y luego un Button
que vuelve a hacer el DataBind
para ver si se encontraron registros para la fecha elegida.
En el clic de ese Button
tengo el código siguiente:
- DataList1.DataBind()
- If DataList1.Items.Count = 0 Then
- DataList1.Visible = False
- Mensaje.Visible = True
- Else
- DataList1.Visible = True
- Mensaje.Visible = False
- End If
Listo, con eso haces que aparezca la leyenda “No hay registros” cuando el DataList
se encuentre vacío.