protected void dtgEmails_DeleteCommand(object source, DataGridCommandEventArgs e) { try { string script; /* Obtener los datos de la grilla. */ this.dsEmails = (DsEmail)Session["dsEmails"]; /* Posicionarse en el registro deseado. */ DsEmail.DatosRow dr = (DsEmail.DatosRow) this.dsEmails.Datos.Rows[e.Item.DataSetIndex]; IEmail email = EmailFactory.GetEmail(); email.EmailID = dr.EmailID; if (!email.Eliminar()) { /** Si se produjo algún error **/ script = "<script language='javascript'>\n"; script += "alert('La eliminación no se realizó debido a errores.');\n"; script += "</script>"; Page.RegisterStartupScript("scriptError", script); } dr = null; email = null; this.dtgEmails.EditItemIndex = -1; Session["dsEmails"] = null; this.BindGrid(0); } catch (Exception ex) { string mensaje = ex.Message; try { if (mensaje == "" || mensaje == null) { mensaje = ex.Message; } } catch (Exception) { mensaje = ex.Message; } ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(mensaje); } }