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:

  1. <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:

  1. DataList1.DataBind()
  2. If DataList1.Items.Count = 0 Then
  3.     DataList1.Visible = False
  4.     Mensaje.Visible = True
  5. Else
  6.     DataList1.Visible = True
  7.     Mensaje.Visible = False
  8. End If

Listo, con eso haces que aparezca la leyenda “No hay registros” cuando el DataList se encuentre vacío.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


uno × 4 =