El GridView provee una propiedad EmptyDataText en la que nosotros establecemos un texto que se desplegará si no se encuentran registros.

En un DataList no existe esta propiedad. Para mostrar el mensaje nos tenemos que valer de un Label:

  1. <asp:Label ID="Mensaje" runat="server" Text="No se encontraron registros."></asp:Label>

Después tenemos que utilizar el evento DataBinding para mostrar el mensaje y el evento ItemDataBound para ocultarlo.

El evento DataBinding ocurre primero que ItemDataBound, es por eso que al principio lo mostramos, y luego en el siguiente evento probamos si existen registros, y si no existen, lo mostramos.

La lógica queda así:

  1. Protected Sub DataList2_DataBinding(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataList2.DataBinding
  2.  
  3.     Mensaje.Visible = True
  4.  
  5. End Sub
  6.  
  7.  
  8. Protected Sub DataList2_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataListItemEventArgs) Handles DataList2.ItemDataBound
  9.  
  10.     If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Then
  11.         Mensaje.Visible = False
  12.     End If
  13.    
  14. End Sub

Deja una respuesta

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


9 + dos =