Confirmación al eliminar registros de un GridView
Una de las cosas interesantes de presentar los datos en un GridView es la posibilidad de darle interacción con el usuario, esto es, permitirle actualizar los datos y/o eliminarlos, en este último caso, si bien es cierto se puede hacer mediante el método RowDeleting y RowDeleted, no me da la posibilidad de hacer una consulta de confirmación al usuario. Entonces como hacerlo?

Como se ve en la imágen, la idea es que al hacer clic en el botón de eliminar el registro, se muestre una consulta para asegurarnos que el usuario realmente quiere eliminar y no se le escapó el dedo. Esta consulta esta en JavaScript, por lo que no hay PostBack (enviar los datos al servidor y recuperar una respuesta), es más si se pulsa Cancelar, no se envían los datos al servidor.
Bien, de entre los muchos métodos que pueden existir para hacerlo, yo les dejo este que se me ocurrió. La idea de esta alternativa es la de no utilizar los métodos propios del GridView (RowDeleting y RowDeleted) y en lugar de un DeleteButton, utilizar un TemplateField que me permita agregar un ImageButton; a este ImageButton, le asociaré su atributo CommandArgument con el id de la tabla enlazada en el GridView, de manera que al hacer clic pueda recuperar dicho valor en el código de C#.

En realidad el código es básico y deben adaptarlo a sus necesidades. La forma en que lleno los datos y hago la eliminación es solamente para que el ejemplo funcione, en una aplicación real, la forma de trabajarlos es diferente, sin embargo, lo que importa para este caso es como hacer la confirmación y como recuperar el id del registro a eliminar.
Espero que les sea de utilidad.
Saludos.






Agosto 20th, 2008 at 2:57 pm
Muy util tu aplicacion doctor gracias por el aporte
Agosto 20th, 2008 at 9:11 pm
Hola amigo, que gusto verte por aqui después de tanto tiempo sin saber nada, me alegro que te sirva de apoyo este ejemplo.
Cuidate y ya nos estamos mensajeando.
Saludos.
Noviembre 25th, 2008 at 9:34 pm
ola sus articulos son muy interesantes, intente pasarlo a visual asp net y no me salio, podria presentarlo en ese lenguaje me es muy urgente gracias Bendiciones:)
Diciembre 3rd, 2008 at 8:06 pm
Amigo excelente aporte, me sirvio demasiado!!!!
Mil gracias
Junio 2nd, 2009 at 3:46 pm
hola muy interante pero como le hago si el dato q se va a borrar vienen de una base de datos?? es decir que el parametro q reciba sea el id que esta en la base y no el id de a fila?