Untitled

mail@pastecode.io avatar
unknown
plain_text
a year ago
3.2 kB
1
Indexable
Never
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace laboratorio.Forms
{
    public partial class Usuarios_Agregar : Form
    {
        private ConexionBD conexion;
        private bool ComboBoxMostrarCarreras = false;

        public Usuarios_Agregar()
        {
            InitializeComponent();
            conexion = new ConexionBD();
            CargarComboBoxEscuelas();

            cbMostrarCarreras.Enabled = false;
        }

        private void CargarComboBoxEscuelas()
        {
            cbMostrarEscuelas.DataSource = conexion.ObtenerEscuelas();
            cbMostrarEscuelas.DisplayMember = "name";
            cbMostrarEscuelas.ValueMember = "idEscuelas";
            ComboBoxMostrarCarreras = true;
        }

        private void cbMostrarEscuelas_SelectedIndexChanged(object sender, EventArgs e)
        {
            
            if (ComboBoxMostrarCarreras) // Verificar si se ha seleccionado un elemento
            {
                var idEscuelaSeleccionada = (int)cbMostrarEscuelas.SelectedValue;
                CargarComboBoxCarreras(idEscuelaSeleccionada);
                cbMostrarCarreras.Enabled = true;
            }
            else
            {
                // Si no se ha seleccionado ningún elemento, deshabilitar cbMostrarCarreras
                cbMostrarCarreras.Enabled = false;
                cbMostrarCarreras.DataSource = null; // Limpiar la lista de carreras
            }
        }

        private void CargarComboBoxCarreras(int idEscuelaSeleccionada)
        {
            cbMostrarCarreras.DataSource = conexion.ObtenerCarreras(idEscuelaSeleccionada);

            cbMostrarCarreras.DisplayMember = "name";
            cbMostrarCarreras.ValueMember = "idCarreras";
        }

        private void txtMatricula_Validar_Solo_Numeros(object sender, KeyPressEventArgs e)
        {
            if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar))
            {
                e.Handled = true;
            }
        }

        private void btnRegistrarAlumno_Click(object sender, EventArgs e)
        {
            var nombreAlumno = txtNombreAlumno.Text + " " + txtApellidoAlumno.Text;
            var semestre = int.Parse(cbSemestre.Text);
            var matricula = int.Parse(txtMatricula.Text);
            var email = txtEmailAlumno.Text;
            var idCarrera = (int)cbMostrarCarreras.SelectedValue;
            var idEscuela = (int)cbMostrarEscuelas.SelectedValue;

            conexion.InsertarAlumno(nombreAlumno, semestre, matricula, email, idCarrera, idEscuela);
            limpiarPantalla();

            MessageBox.Show("Alumno registrado exitosamente");
        }

        private void limpiarPantalla()
        {
            txtNombreAlumno.Text = "";
            txtApellidoAlumno.Text = "";
            txtMatricula.Text = "";
            cbSemestre.Text = "1";
        }
    }
}