ASP.NET - Saber la plantilla actual GridView

 
Vista:

Saber la plantilla actual GridView

Publicado por Kraipo (7 intervenciones) el 02/08/2015 22:54:49
Hola.

¿Cómo puedo saber por código que plantilla se carga en un GridView?, es que según que plantilla se carga muestro unos controles o no, en una EmptyDataTemplate tengo un textbox y un button que si funcionan, pero al agregar los datos y no salir esa plantilla da error.

Gracias y un saludo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Saber la plantilla actual GridView

Publicado por Khristian (83 intervenciones) el 03/08/2015 01:30:33
Aclara tu pregunta.

Por lo general... según los datos de entrada o de salida, se suele cargar un estilo ad hoc a mostrar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Saber la plantilla actual GridView

Publicado por Kraipo (7 intervenciones) el 03/08/2015 13:48:45
Hola de nuevo y gracias por responder.

Creo la pregunta esta claro, pero bueno, intentare explicarlo de nuevo.

Tengo un GridView que carga los datos mediante un SQLDatasource, si la tabla esta vacia, el GridView muestra la EmptyDataTemplate donde tengo un textbox y un button para que el administrador del sitio pueda guardar el primer registro, y lo guarda bien, una vez guardado el primer registro ya no sale la EmptyDataTemplate con el texbox y el button, debería salir el GridView con el primer registro, y es hay donde me da error, porque no encuentra el textbox ni el button que están en la EmptyDataTemplate, para encontrar estos controles lo hago en el load de la pagina.

Lo que quiero hacer es, por código, que busque el textbox y el button si la plantilla que se muestra el la vacia, y si no es esa plantilla que no los busque, o lo que es lo mismo, detectar que plantilla usa el Gridview al cargar la pagina.

Espero haberme explicado, gracias y un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Saber la plantilla actual GridView

Publicado por Khristian (83 intervenciones) el 03/08/2015 15:40:11
Al parecer no estaba tan clara la pregunta...

Lo dije.... va a depender de los datos de entrada o de salida, el estilo (platilla) que se carga en el gridview.

"si la tabla esta vacia"

No... como lo planteaste... "es que según que plantilla se carga muestro unos controles o no"
Siempre va a depender de datos de entrada o salida.

Bueno...

Para saber que plantilla se carga, accede al numero de filas del gridview... si es cero, se carga la emptydatatemplate.

Lo que tendrás que hacer, es en el page load, ejecutar un databind al gridview (Para traer los resultados, pues deben estar antes), luego del databind, una verificación del numero de filas devueltas en el gridview, luego un IF... si este numero de filas del gridview es mayor a 0, trabajar con esos controles, sino, omitirlos.

Quizá seria útil que señalaras siempre la mayor cantidad de datos, pues el error de que no encuentra esos controles suele producirse al renderizar la pagina, pues si el gridview devuelve datos, la emptydatatemplate no se crea, y es ahí donde esos controles no existirán.

Yo lo hago de otra manera.
Los ingresos de datos los hago en un panel aparte.
Como el ingreso de datos siempre debe estar, la emptydatatemplate la utilizo para mostrar un mensaje tipo "No hay resultados para la consulta elegida"
Si hay datos, se muestran los datos, y el panel de ingreso sigue ahi.
Es mas, si lo quieres hacer mas profesional, has ese panel del tipo emergente, que lo lanzas con un icono o botón de manera que el usuario siempre prueda tener el panel de ingreso solo cuando lo necesite a voluntad.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar