Created
July 14, 2015 20:33
-
-
Save Fhernd/04b845576471dd8a62be to your computer and use it in GitHub Desktop.
Clase que representa el control visual para adición de un libro.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// ===++=== | |
// | |
// OrtizOL - xCSw | |
// | |
// Proyecto: Cupi2.NET | |
// | |
// ===--=== | |
/*============================================================ | |
// | |
// Clase(s): `DialogoAdicionarLibro` | |
// | |
// Propósito: Implementar y representar el diálogo de | |
// ingreso de datos del libro. | |
// | |
// Original: http://cupi2.uniandes.edu.co/sitio/index.php/cursos/apo1/nivel-3/tienda-de-libros/visualizacion-codigo/dialogoagregarlibro | |
// | |
============================================================*/ | |
using System; | |
using System.Windows.Forms; | |
namespace N3_TiendaLibros.GUI | |
{ | |
/// <summary> | |
/// Clase que representa el diálogo de adición de un libro. | |
/// </summary> | |
public partial class DialogoAdicionarLibro : Form | |
{ | |
#region Controles | |
/// <summary> | |
/// Referencia la ventana principal de la aplicación. | |
/// </summary> | |
private Principal m_principal; | |
#endregion | |
#region Constructores: | |
/// <summary> | |
/// Crea un nuevo diálogo de adición de libros. | |
/// </summary> | |
/// <param name="principal">Referencia a la ventana principal de la aplicación.</param> | |
public DialogoAdicionarLibro(Principal principal) | |
{ | |
InitializeComponent(); | |
m_principal = principal; | |
this.ActiveControl = txtTitulo; | |
txtTitulo.Focus(); | |
} | |
#endregion | |
#region Eventos: | |
/// <summary> | |
/// Evento que valida la adición del libro. | |
/// </summary> | |
/// <param name="sender">Objeto generador del evento.</param> | |
/// <param name="e">Argumentos del evento.</param> | |
private void btnAceptar_Click(object sender, EventArgs e) | |
{ | |
if (!(txtIsbn.Text.Length == 0) && !(txtTitulo.Text.Length == 0) && !(txtPrecio.Text.Length == 0)) | |
{ | |
if (!(m_principal.ExisteLibro(txtIsbn.Text))) | |
{ | |
decimal precio; | |
if (Decimal.TryParse(txtPrecio.Text, out precio)) | |
{ | |
if (!(precio == 0.0M)) | |
{ | |
m_principal.AdicionarLibro(txtIsbn.Text, txtTitulo.Text, precio); | |
this.DialogResult = System.Windows.Forms.DialogResult.OK; | |
} | |
else | |
{ | |
MessageBox.Show(this, "El precio debe ser mayor a cero.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Warning); | |
} | |
} | |
else | |
{ | |
MessageBox.Show(this, "El campo Precio no contiene un valor válido. (Sólo se admiten valores decimales.)", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); | |
} | |
} | |
else | |
{ | |
MessageBox.Show(this, String.Format("Ya existe un libro con el ISBN {0}.", txtIsbn.Text), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); | |
} | |
} | |
else | |
{ | |
MessageBox.Show(this, "Debe llenar todos los campos.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); | |
} | |
} | |
/// <summary> | |
/// Evento de cancelación del diálogo de adición de libro. | |
/// </summary> | |
/// <param name="sender">Objeto generador del evento.</param> | |
/// <param name="e">Argumentos del evento.</param> | |
private void btnCancelar_Click(object sender, EventArgs e) | |
{ | |
this.DialogResult = System.Windows.Forms.DialogResult.Cancel; | |
} | |
#endregion | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment