jueves, 22 de enero de 2009

GridView. Buena práctica para cuando está vacío de datos.

Estoy metido en un pequeño y bonito proyecto en donde he podido hacer, casi, lo que me da la gana incluyendo mi primer proyecto en Scrum con TFS2008, en una máquina virtual, etc. Y, además, con un buen desarrollador a mi lado.

Del diseño gráfico también me estoy encargando yo, multimedia que es uno, y me he encontrado que cuando el SqlAdapter me devuelve los datos vacios, literalmente dejaba de ver el GridView. Lo cual a veces está bien y a veces no.

Y como soy un fan de Google, pues para mis GridView que soportan un buscador le he añadido un mensaje de “No se han encontrado resultados” por defecto en el caso que no haya ninguna fila en el GridView.

¿Y cómo se hace eso?

Te vas al final de tu GridView y justo después de la declaración de las columnas le conformas el template en caso de estar vacío:

   </Columns>
  <EmptyDataTemplate>
     <asp:Label ID="Label21" runat="server" Text="No se ha encontrado ninguna coincidencia con el criterio de búsqueda. />
  </EmptyDataTemplate>
</asp:GridView>


Y si lo incluyes por defecto en las declaraciones de tus GridView… la mayoría de las veces te vas a quitar mucho trabajo y el resultado es mucho mejor que un efecto “ahora te veo, ahora no te veo”.

3 comentarios:

David dijo...

Muy buen aporte. Sobre todo para aquellos usuarios que quieren saber "¿qué pasa después que hago click acá?". Si el Gridview desaparece quedan como que O_O, como dicen por ahí "viendo chispas". Aporte: Para aquellos que copian y pegan el código, tengan en cuenta cerrar las comillas dobles en el atributo Text del label creado.

Anónimo dijo...

Muchas gracias viejo.
muy bueno.

Anónimo dijo...

Muy bueno, me ha resultado muy útil.