Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Documentacin tcnica
Documentacion tcnica
namespace Alumneitor { /// <summary> /// Lgica de interaccin para MainWindow.xaml /// </summary> public partial class MainWindow : Window { string nombre; int totalRegistros = 0; int registroActual = 0; bool modificar = false; Datos[] datosAlumno = new Datos[1000]; bool modificado = false;
public MainWindow() { InitializeComponent(); } private void menu_archivo_nuevo_Click(object sender, RoutedEventArgs e) { //Crear Microsoft.Win32.SaveFileDialog ventanaSalvar = new Microsoft.Win32.SaveFileDialog(); if (ventanaSalvar.ShowDialog() == true) { nombre = ventanaSalvar.FileName; Archivo.Crear(ventanaSalvar.FileName); menu_archivo_guardar.IsEnabled = true; menu_archivo_guardarComo.IsEnabled = true; btn_nuevo.IsEnabled = true; btn_eliminar.IsEnabled = false; btn_cancelar.IsEnabled = false; } }
private void menu_archivo_abrir_Click(object sender, RoutedEventArgs e) { //Abrir Microsoft.Win32.OpenFileDialog ventanaAbrir = new Microsoft.Win32.OpenFileDialog(); if (ventanaAbrir.ShowDialog() == true) { nombre = ventanaAbrir.FileName; BinaryReader lectura = Archivo.Leer(nombre, ref totalRegistros); lv_alumnos.Items.Clear(); for (int i = 0; i < totalRegistros; i++) //Se leen todos los datos del archivo y se almacenan en el arreglo temporal { lectura.BaseStream.Seek(70 * i, SeekOrigin.Begin); datosAlumno[i] = new Datos(); datosAlumno[i].numero = lectura.ReadInt32(); datosAlumno[i].nombre = lectura.ReadString(); datosAlumno[i].paterno = lectura.ReadString(); datosAlumno[i].materno = lectura.ReadString(); datosAlumno[i].nacimiento = lectura.ReadString(); lv_alumnos.Items.Add(datosAlumno[i].numero); } menu_archivo_guardar.IsEnabled = true; menu_archivo_guardarComo.IsEnabled = true; btn_nuevo.IsEnabled = true; if (totalRegistros > 0) { btn_eliminar.IsEnabled = true; VerRegistro(0); lbl_registros.Content = "Registros: " + (registroActual + 1) + " / " + totalRegistros; btn_actualizar.IsEnabled = true; lv_alumnos.SelectedIndex = 0; registroActual = 0; } btn_cancelar.IsEnabled = false; ventana.Title = "Alumneitor: " + nombre; } } private void menu_archivo_guardar_Click(object sender, RoutedEventArgs e) { //Guardar Archivo.Guardar(nombre, datosAlumno, totalRegistros); modificado = false; }
public void VerRegistro(int numeroRegistro) { //Funcion para mostrar un registro especifico registroActual = numeroRegistro; tbx_nombre.Text = datosAlumno[registroActual].nombre.ToString(); tbx_paterno.Text = datosAlumno[registroActual].paterno; tbx_materno.Text = datosAlumno[registroActual].materno;
} private void lv_alumnos_SelectionChanged(object sender, SelectionChangedEventArgs e) { try { //Se muestra el registro que este seleccionado VerRegistro(lv_alumnos.SelectedIndex); registroActual = lv_alumnos.SelectedIndex; lbl_registros.Content = "Registros: " + (registroActual + 1) + " / " + totalRegistros; } catch (IndexOutOfRangeException ex) { } } private void menu_archivo_guardarComo_Click(object sender, RoutedEventArgs e) { //Se guarda con otro nombre Microsoft.Win32.SaveFileDialog sfd = new Microsoft.Win32.SaveFileDialog(); if (sfd.ShowDialog() == true) { nombre = sfd.FileName; Archivo.Guardar(nombre, datosAlumno, totalRegistros); modificado = false; } } private void btn_agregar_Click(object sender, RoutedEventArgs e) { try { if (modificar) { Actualizar(registroActual); btn_agregar.Content = "Agregar"; modificar = false; } else { //Se agregan datos al arreglo temporal, siempre y cuando haya algo en los textbox datosAlumno[totalRegistros] = new Datos(); datosAlumno[totalRegistros].numero = int.Parse(tbx_numero.Text); datosAlumno[totalRegistros].nombre = tbx_nombre.Text; datosAlumno[totalRegistros].paterno = tbx_paterno.Text; datosAlumno[totalRegistros].materno = tbx_materno.Text; datosAlumno[totalRegistros].nacimiento = dtp_nacimiento.Text; registroActual = totalRegistros; totalRegistros++; if (!btn_eliminar.IsEnabled) btn_eliminar.IsEnabled = true;
lv_alumnos.Items.Add(tbx_numero.Text); lbl_registros.Content = "Registros: " + (registroActual + 1) + " / " + totalRegistros; lv_alumnos.SelectedIndex = registroActual; } btn_agregar.IsEnabled = false; btn_nuevo.IsEnabled = true; btn_cancelar.IsEnabled = false; btn_actualizar.IsEnabled = true; modificado = true; } catch (FormatException ex) { MessageBox.Show("Ingresa todos los campos", "Error", MessageBoxButton.OK, MessageBoxImage.Exclamation); } } private void Window_Loaded(object sender, RoutedEventArgs e) { //Al cargar se deshabilitan ciertos botones btn_agregar.IsEnabled = false; menu_archivo_guardar.IsEnabled = false; menu_archivo_guardarComo.IsEnabled = false; btn_nuevo.IsEnabled = false; btn_eliminar.IsEnabled = false; btn_cancelar.IsEnabled = false; btn_actualizar.IsEnabled = false; } private void menu_archivo_cerrar_Click(object sender, RoutedEventArgs e) { if (modificado) { MessageBoxResult respuesta = MessageBox.Show("Saldras sin guardar, Deseas Guardar?", "Advertencia", MessageBoxButton.YesNoCancel, MessageBoxImage.Exclamation); if (respuesta == MessageBoxResult.Yes) { //Guardar Archivo.Guardar(nombre, datosAlumno, totalRegistros); modificado = false; } else if (respuesta == MessageBoxResult.No) this.Close(); } else this.Close(); } private void btn_nuevo_Click(object sender, RoutedEventArgs e) { //Se limpian.... tbx_nombre.Clear(); tbx_materno.Clear(); tbx_paterno.Clear(); tbx_numero.Clear(); dtp_nacimiento.Text=""; btn_agregar.IsEnabled = true;
btn_nuevo.IsEnabled = false; lbl_registros.Content = "Registros Nuevo"; btn_cancelar.IsEnabled = true; tbx_nombre.Focus(); btn_eliminar.IsEnabled = false; btn_actualizar.IsEnabled = false; lv_alumnos.SelectedIndex = -1; } private void btn_eliminar_Click(object sender, RoutedEventArgs e) { //Se iguala a nulo el registro a eliminar datosAlumno[registroActual] = null; for (int i = registroActual; i < totalRegistros; i++) { datosAlumno[i] = datosAlumno[i+1]; // Se recorren los registros en el arreglo temporal } totalRegistros--; lv_alumnos.Items.RemoveAt(registroActual); //Se elimina el elemento de la lista if (totalRegistros > 0) { lv_alumnos.SelectedIndex = 0; //Se muestra el primer registro lbl_registros.Content = "Registros: " + (registroActual + 1) + " / " + totalRegistros; } else { //se limpian textbox etc, en caso de no haber registros tbx_nombre.Clear(); tbx_materno.Clear(); tbx_paterno.Clear(); tbx_numero.Clear(); dtp_nacimiento.Text = ""; lbl_registros.Content = "Sin Registros"; btn_eliminar.IsEnabled = false; btn_actualizar.IsEnabled = false; } modificado = true; } private void btn_cancelar_Click(object sender, RoutedEventArgs e) { btn_agregar.IsEnabled = false; btn_actualizar.IsEnabled = false; btn_nuevo.IsEnabled = true; lv_alumnos.SelectedIndex = 0; btn_cancelar.IsEnabled = false; if (totalRegistros == 0) { lbl_registros.Content = "Sin Registros"; } else { btn_actualizar.IsEnabled = true; btn_eliminar.IsEnabled = true; lv_alumnos.SelectedIndex = 0; } if (modificar)
{ modificar = false; btn_agregar.Content = "Agregar"; } } public void Actualizar(int indice) { datosAlumno[indice].numero = int.Parse(tbx_numero.Text); datosAlumno[indice].nombre = tbx_nombre.Text; datosAlumno[indice].paterno = tbx_paterno.Text; datosAlumno[indice].materno = tbx_materno.Text; datosAlumno[indice].nacimiento = dtp_nacimiento.Text; } private void btn_actualizar_Click(object sender, RoutedEventArgs e) { modificar = true; btn_cancelar.IsEnabled = true; btn_nuevo.IsEnabled = false; btn_eliminar.IsEnabled = false; btn_actualizar.IsEnabled = false; btn_agregar.Content = "Guardar"; btn_agregar.IsEnabled = true; tbx_nombre.Focus(); //lv_alumnos.SelectedIndex = -1; } private void ventana_Closing(object sender, System.ComponentModel.CancelEventArgs e) { if (modificado) { MessageBoxResult respuesta = MessageBox.Show("Saldras sin guardar, Deseas Guardar?", "Advertencia", MessageBoxButton.YesNoCancel, MessageBoxImage.Exclamation); if (respuesta == MessageBoxResult.Yes) { //Guardar Archivo.Guardar(nombre, datosAlumno, totalRegistros); modificado = false; } else if (respuesta == MessageBoxResult.No) this.Close(); else e.Cancel = true; } } } }
Documentacion tcnica
using using using using using using using using using using using
System.Text; System.Windows; System.Windows.Controls; System.Windows.Data; System.Windows.Documents; System.Windows.Input; System.Windows.Media; System.Windows.Media.Imaging; System.Windows.Navigation; System.Windows.Shapes; System.IO;
namespace Alumneitor { /// <summary> /// Lgica de interaccin para MainWindow.xaml /// </summary> public partial class MainWindow : Window { string nombre; int totalRegistros = 0; int registroActual = 0; bool modificar = false; Datos[] datosAlumno = new Datos[1000]; bool modificado = false;
public MainWindow() { InitializeComponent(); } private void menu_archivo_nuevo_Click(object sender, RoutedEventArgs e) { //Crear Microsoft.Win32.SaveFileDialog ventanaSalvar = new Microsoft.Win32.SaveFileDialog(); if (ventanaSalvar.ShowDialog() == true) { nombre = ventanaSalvar.FileName; Archivo.Crear(ventanaSalvar.FileName); menu_archivo_guardar.IsEnabled = true; menu_archivo_guardarComo.IsEnabled = true; btn_nuevo.IsEnabled = true; btn_eliminar.IsEnabled = false; btn_cancelar.IsEnabled = false; } } private void menu_archivo_abrir_Click(object sender, RoutedEventArgs e) { //Abrir Microsoft.Win32.OpenFileDialog ventanaAbrir = new Microsoft.Win32.OpenFileDialog(); if (ventanaAbrir.ShowDialog() == true) { nombre = ventanaAbrir.FileName; BinaryReader lectura = Archivo.Leer(nombre, ref totalRegistros);
lv_alumnos.Items.Clear(); for (int i = 0; i < totalRegistros; i++) //Se leen todos los datos del archivo y se almacenan en el arreglo temporal { lectura.BaseStream.Seek(70 * i, SeekOrigin.Begin); datosAlumno[i] = new Datos(); datosAlumno[i].numero = lectura.ReadInt32(); datosAlumno[i].nombre = lectura.ReadString(); datosAlumno[i].paterno = lectura.ReadString(); datosAlumno[i].materno = lectura.ReadString(); datosAlumno[i].nacimiento = lectura.ReadString(); lv_alumnos.Items.Add(datosAlumno[i].numero); } menu_archivo_guardar.IsEnabled = true; menu_archivo_guardarComo.IsEnabled = true; btn_nuevo.IsEnabled = true; if (totalRegistros > 0) { btn_eliminar.IsEnabled = true; VerRegistro(0); lbl_registros.Content = "Registros: " + (registroActual + 1) + " / " + totalRegistros; btn_actualizar.IsEnabled = true; lv_alumnos.SelectedIndex = 0; registroActual = 0; } btn_cancelar.IsEnabled = false; ventana.Title = "Alumneitor: " + nombre; } } private void menu_archivo_guardar_Click(object sender, RoutedEventArgs e) { //Guardar Archivo.Guardar(nombre, datosAlumno, totalRegistros); modificado = false; }
public void VerRegistro(int numeroRegistro) { //Funcion para mostrar un registro especifico registroActual = numeroRegistro; tbx_nombre.Text = datosAlumno[registroActual].nombre.ToString(); tbx_paterno.Text = datosAlumno[registroActual].paterno; tbx_materno.Text = datosAlumno[registroActual].materno; tbx_numero.Text = datosAlumno[registroActual].numero.ToString(); dtp_nacimiento.Text = datosAlumno[registroActual].nacimiento.ToString(); ;
{ try { //Se muestra el registro que este seleccionado VerRegistro(lv_alumnos.SelectedIndex); registroActual = lv_alumnos.SelectedIndex; lbl_registros.Content = "Registros: " + (registroActual + 1) + " / " + totalRegistros; } catch (IndexOutOfRangeException ex) { } } private void menu_archivo_guardarComo_Click(object sender, RoutedEventArgs e) { //Se guarda con otro nombre Microsoft.Win32.SaveFileDialog sfd = new Microsoft.Win32.SaveFileDialog(); if (sfd.ShowDialog() == true) { nombre = sfd.FileName; Archivo.Guardar(nombre, datosAlumno, totalRegistros); modificado = false; } } private void btn_agregar_Click(object sender, RoutedEventArgs e) { try { if (modificar) { Actualizar(registroActual); btn_agregar.Content = "Agregar"; modificar = false; } else { //Se agregan datos al arreglo temporal, siempre y cuando haya algo en los textbox datosAlumno[totalRegistros] = new Datos(); datosAlumno[totalRegistros].numero = int.Parse(tbx_numero.Text); datosAlumno[totalRegistros].nombre = tbx_nombre.Text; datosAlumno[totalRegistros].paterno = tbx_paterno.Text; datosAlumno[totalRegistros].materno = tbx_materno.Text; datosAlumno[totalRegistros].nacimiento = dtp_nacimiento.Text; registroActual = totalRegistros; totalRegistros++; if (!btn_eliminar.IsEnabled) btn_eliminar.IsEnabled = true; lv_alumnos.Items.Add(tbx_numero.Text); lbl_registros.Content = "Registros: " + (registroActual + 1) + " / " + totalRegistros; lv_alumnos.SelectedIndex = registroActual; } btn_agregar.IsEnabled = false; btn_nuevo.IsEnabled = true; btn_cancelar.IsEnabled = false; btn_actualizar.IsEnabled = true;
modificado = true; } catch (FormatException ex) { MessageBox.Show("Ingresa todos los campos", "Error", MessageBoxButton.OK, MessageBoxImage.Exclamation); } } private void Window_Loaded(object sender, RoutedEventArgs e) { //Al cargar se deshabilitan ciertos botones btn_agregar.IsEnabled = false; menu_archivo_guardar.IsEnabled = false; menu_archivo_guardarComo.IsEnabled = false; btn_nuevo.IsEnabled = false; btn_eliminar.IsEnabled = false; btn_cancelar.IsEnabled = false; btn_actualizar.IsEnabled = false; } private void menu_archivo_cerrar_Click(object sender, RoutedEventArgs e) { if (modificado) { MessageBoxResult respuesta = MessageBox.Show("Saldras sin guardar, Deseas Guardar?", "Advertencia", MessageBoxButton.YesNoCancel, MessageBoxImage.Exclamation); if (respuesta == MessageBoxResult.Yes) { //Guardar Archivo.Guardar(nombre, datosAlumno, totalRegistros); modificado = false; } else if (respuesta == MessageBoxResult.No) this.Close(); } else this.Close(); } private void btn_nuevo_Click(object sender, RoutedEventArgs e) { //Se limpian.... tbx_nombre.Clear(); tbx_materno.Clear(); tbx_paterno.Clear(); tbx_numero.Clear(); dtp_nacimiento.Text=""; btn_agregar.IsEnabled = true; btn_nuevo.IsEnabled = false; lbl_registros.Content = "Registros Nuevo"; btn_cancelar.IsEnabled = true; tbx_nombre.Focus(); btn_eliminar.IsEnabled = false; btn_actualizar.IsEnabled = false; lv_alumnos.SelectedIndex = -1; }
private void btn_eliminar_Click(object sender, RoutedEventArgs e) { //Se iguala a nulo el registro a eliminar datosAlumno[registroActual] = null; for (int i = registroActual; i < totalRegistros; i++) { datosAlumno[i] = datosAlumno[i+1]; // Se recorren los registros en el arreglo temporal } totalRegistros--; lv_alumnos.Items.RemoveAt(registroActual); //Se elimina el elemento de la lista if (totalRegistros > 0) { lv_alumnos.SelectedIndex = 0; //Se muestra el primer registro lbl_registros.Content = "Registros: " + (registroActual + 1) + " / " + totalRegistros; } else { //se limpian textbox etc, en caso de no haber registros tbx_nombre.Clear(); tbx_materno.Clear(); tbx_paterno.Clear(); tbx_numero.Clear(); dtp_nacimiento.Text = ""; lbl_registros.Content = "Sin Registros"; btn_eliminar.IsEnabled = false; btn_actualizar.IsEnabled = false; } modificado = true; } private void btn_cancelar_Click(object sender, RoutedEventArgs e) { btn_agregar.IsEnabled = false; btn_actualizar.IsEnabled = false; btn_nuevo.IsEnabled = true; lv_alumnos.SelectedIndex = 0; btn_cancelar.IsEnabled = false; if (totalRegistros == 0) { lbl_registros.Content = "Sin Registros"; } else { btn_actualizar.IsEnabled = true; btn_eliminar.IsEnabled = true; lv_alumnos.SelectedIndex = 0; } if (modificar) { modificar = false; btn_agregar.Content = "Agregar"; } } public void Actualizar(int indice) { datosAlumno[indice].numero = int.Parse(tbx_numero.Text);
datosAlumno[indice].nombre = tbx_nombre.Text; datosAlumno[indice].paterno = tbx_paterno.Text; datosAlumno[indice].materno = tbx_materno.Text; datosAlumno[indice].nacimiento = dtp_nacimiento.Text; } private void btn_actualizar_Click(object sender, RoutedEventArgs e) { modificar = true; btn_cancelar.IsEnabled = true; btn_nuevo.IsEnabled = false; btn_eliminar.IsEnabled = false; btn_actualizar.IsEnabled = false; btn_agregar.Content = "Guardar"; btn_agregar.IsEnabled = true; tbx_nombre.Focus(); //lv_alumnos.SelectedIndex = -1; } private void ventana_Closing(object sender, System.ComponentModel.CancelEventArgs e) { if (modificado) { MessageBoxResult respuesta = MessageBox.Show("Saldras sin guardar, Deseas Guardar?", "Advertencia", MessageBoxButton.YesNoCancel, MessageBoxImage.Exclamation); if (respuesta == MessageBoxResult.Yes) { //Guardar Archivo.Guardar(nombre, datosAlumno, totalRegistros); modificado = false; } else if (respuesta == MessageBoxResult.No) this.Close(); else e.Cancel = true; } } } }