Terminado

Proyecto de diseño de formulario en C# utilizando Windows Forms.

Publicado el 08 Octubre, 2024 en Programación y Tecnología

Sobre este proyecto

Abierto

El objetivo es programar en C# un formulario basado en la imagen proporcionada, utilizando Windows Forms en Visual Studio. El formulario debe gestionar información de clientes con diversos campos y funcionalidades, integrando los principios de un proyecto de múltiples capas (capa de presentación, capa de negocio y capa de datos) para una estructura escalable y mantenible. Este formulario permitirá a los usuarios realizar operaciones CRUD (Crear, Leer, Actualizar y Eliminar) sobre los registros de clientes.

Requisitos del Proyecto
Estructura Multicapas:

Utilizar una solución en blanco y configurar tres capas principales: CapaEntidad, CapaNegocio, y CapaDatos. La CapaPresentacion se encargará de la interfaz gráfica.
Las capas deben estar correctamente referenciadas entre sí para permitir la comunicación y operación entre ellas.
Formulario de Clientes:

Crear un formulario llamado frmCliente en la CapaPresentacion que contenga los siguientes campos y controles:
Labels: "Nombre", "Apellido Paterno", "Apellido Materno", "F. Nacimiento", "DNI", "Dirección", "Teléfono", "Estado Civil", "E-mail", "Estado", y "Tipo".
TextBoxes: Para txtNombre, txtApellidoPaterno, txtApellidoMaterno, txtDireccion, txtEmail y otros campos de entrada de texto.
NumericUpDown: Para txtDNI y otros campos numéricos.
ComboBox: Para seleccionar opciones en Estado Civil y Estado.
DateTimePicker: Para Fecha de Nacimiento y cualquier otro campo de fecha.
LinkLabel: Para lnkFoto, que permitirá al usuario cargar una foto.
PictureBox: Para picFoto, que mostrará la imagen cargada por el usuario.
Botones: btnNuevo, btnGuardar, btnEliminar, btnEditar y btnCancelar, para gestionar las operaciones CRUD.
Un DataGridView en el formulario para listar los registros de clientes con columnas que correspondan a cada campo de la entidad.
Interactividad y Funcionalidad CRUD:

Crear métodos en la capa de negocio (CNCliente) para las operaciones CRUD. Estos métodos deberán interactuar con la capa de datos (CDCliente) para manipular los datos almacenados en la base de datos.
Implementar conexión a la base de datos MySQL utilizando MySQL.Data y configurar las entidades (CECliente) para manejar la información de cada cliente.
Configurar los eventos de los botones para:
btnNuevo: Limpiar los campos para crear un nuevo registro.
BtnGuardar: Guardar o actualizar la información en la base de datos.
BtnEliminar: Eliminar el registro seleccionado.
BtnEditar: Cargar los datos del registro seleccionado en los controles.
BtnCancelar: Limpiar los campos y cancelar la operación actual.
Configuración de Base de Datos:

Configurar una base de datos llamada solucion1 en MySQL con una tabla cliente que contenga los campos:
idCliente (Primary Key, int)
nombre (varchar)
apellidoPaterno (varchar)
apellidoMaterno (varchar)
fechaNacimiento (date)
dni (varchar)
direccion (varchar)
telefono (varchar)
estadoCivil (varchar)
email (varchar)
estado (varchar)
tipo (varchar)
Utilizar USBWebServer para configurar un entorno local de servidor y base de datos como se detalla en el laboratorio.
Entrega:
Una vez finalizado el desarrollo del formulario y la integración completa de las capas, comprimir la solución en un archivo .rar con el formato NOMBRE_APELLIDO.rar
Recursos Adicionales:
Laboratorio 4 proporciona las instrucciones para la creación del proyecto multicapas y la configuración de los formularios básicos.
Laboratorio 5 detalla cómo establecer la conexión con MySQL y configurar la capa de datos.
Laboratorio 6 explica la implementación de operaciones CRUD y cómo utilizar los controles de formulario para gestionar la información.
Esta descripción proporciona al programador una guía clara para implementar el proyecto según los requisitos y las buenas prácticas indicadas en los laboratorios proporcionados.

Categoría Programación y Tecnología
Subcategoría Aplicaciones de escritorio
¿Cuál es el alcance del proyecto? Crear una aplicación nueva
¿Es un proyecto o una posición? Un proyecto
Actualmente tengo No aplica
Disponibilidad requerida Según se necesite
Plataformas requeridas Windows

Plazo de Entrega: 11 Octubre, 2024

Habilidades necesarias