- Event Handlers en WinForms ... 30/07/2010
- ¡La historia clínica es mia! En el día de hoy se anunció una nueva disposición legal en la Argentina por la cual se reconoce... 23/10/2009
- La eterna discusión de quién tiene más botones Un poco más sobre la clásica disputa Mac vs.... 20/10/2009
- Use Cases vs. User Stories Opinión personal sobre el empleo de Use Cases y User Stories para definir requisitos... 20/10/2009
- Lanzamiento de Google Maps en Argentina A partir de hoy Google lanzó el Centro de Comercios Locales en Google Maps Argentina. Este... 02/10/2009
- Reloj mundial Increible reloj que da la hora en cualquier punto del planeta al mismo... 29/08/2009
- Error Saving changes is not permitted en SQL Server 2008 Solución al error que impide guardar cambios que requieren re-crear las tablas en SQL Server... 29/08/2009
- Uso de Branches y Tags con SVN El uso de branches y tags en SVN nos permite una mejor organización del trabajo en equipo. Si bien... 28/08/2009
- Cómo determinar la paridad de claves para encriptación con DES Un tema que resulta confuso es determinar si una clave DES es odd parity o even parity. El... 28/08/2009
- Power Tip para Builds Lentos en aplicaciones Mobile Si estás desarrollando una aplicación Mobile con Visual Studio, por alguna extraña razón que... 28/08/2009
Cómo eliminar con el evento RowDeleting del control GridView
El evento RowDeleting se dispara en un GridView cuando tenemos un control con la propiedad CommandName="Delete". Este control puede ser tanto un Button, ImageButton o LinkButton.
Marcelo Ruiz, 28/08/2009
El evento RowDeleting se dispara en un GridView cuando tenemos un control con la propiedad CommandName="Delete". Este control puede ser tanto un Button, ImageButton o LinkButton. Si el CommandName tiene un nombre diferente de Delete el evento en cuestión no se disparará y lo hará el evento RowCommand en su lugar.
El truco consiste en definir la propiedad DataKeyNames del GridView con el nombre del campo Primary Key de nuestro DataSource, por ejemplo, DataKeyNames="ClientId".
Luego, cuando manejamos el evento RowDeleting primero obtenemos el índice de la fila que se desea borrar:
int index = e.RowIndex;
Luego, con este índice podemos llegar al primary key, que es lo que necesitamos para borrar:
int clientId = (int)campaignsGrid.DataKeys[index].Value;
El método para borrar de la base de datos dependerá de nuestra aplicación pero, si usamos LLBLGen Pro, podría ser algo así:
ClientEntity client = new ClientEntity(clientId); client.Delete();

