private void btnGuardarUsuario_Click(object sender, RoutedEventArgs e) { // enlace = new Enlace(); ya tenias tu enlace global e inicializada en el constructor enlace.conectar(); DataRowView row = dgAlumnos.SelectedItem as DataRowView; if (!String.IsNullOrWhiteSpace(txtID.Text) && !String.IsNullOrWhiteSpace(txtNombre.Text) && !String.IsNullOrWhiteSpace(txtGrupo.Text)) { if (row == null) { int contador = enlace.consulta_existencia(txtID.Text); if (contador == 0) { enlace.insertar(txtID.Text, txtNombre.Text, txtGrupo.Text, txtTutor.Text, txtTelefono.Text, txtObservaciones.Text); imagen(txtID.Text); MessageBox.Show("Alumno registrado con éxito."); limpiar(); } else { MessageBox.Show("El ID de alumno ya existe."); } } else { if (txtID.Text == row["ID"].ToString()) { enlace.actualizar(txtNombre.Text, txtGrupo.Text, txtTutor.Text, txtTelefono.Text, txtObservaciones.Text, txtID.Text); imagen(txtID.Text); MessageBox.Show("Datos de alumno actualizados."); limpiar(); } else { if (txtNombre.Text == row["NOMBRE"].ToString()) { MessageBoxResult result = MessageBox.Show("Ya hay un alumno registrado con este nombre, ¿Desea continuar?", "Registro", MessageBoxButton.OKCancel, MessageBoxImage.Warning); switch (result) { case MessageBoxResult.OK: enlace.insertar(txtID.Text, txtNombre.Text, txtGrupo.Text, txtTutor.Text, txtTelefono.Text, txtObservaciones.Text); imagen(txtID.Text); MessageBox.Show("Alumno registrado con éxito."); limpiar(); break; case MessageBoxResult.Cancel: break; } } } } } else { MessageBox.Show("Hay campos necesarios vacíos"); } dgAlumnos.ItemsSource = null; carga_dg(); enlace.cerrar(); }