// ===++===
//
// OrtizOL
//
// ===--===
/*============================================================
//
// Clase: ControlArgregarOpiniones.cs
//
// Original en: http://goo.gl/eWMTxS
//
// Propósito: Diseñar el control para los componentes
// que permitan agregar una opinión a la encuesta.
//
============================================================*/
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using N1_Encuesta.Modelo;
namespace N1_Encuesta.GUI
{
public partial class ControlAgregarOpinion : UserControl
{
#region Campos (componentes de interfaz)
/// <summary>
/// Representa la interfaz principal de la aplicación.
/// </summary>
private Principal principal;
#endregion
#region Constructores
/// <summary>
/// Crea un control con los componentes para agregar una opinión a la encuesta.
/// </summary>
/// <param name="principal">Referencia a la interfaz principal de la aplicación.</param>
public ControlAgregarOpinion(Principal principal)
{
InitializeComponent();
this.principal = principal;
cbxRangoEdad.SelectedIndex = 0;
cbxEstadoCivil.SelectedIndex = 0;
cbxOpinion.SelectedIndex = 0;
}
#endregion
#region Eventos
/// <summary>
/// Agregar una opinión.
/// </summary>
/// <param name="sender">Objeto generador del evento.</param>
/// <param name="e">Dato del evento.</param>
private void btnAgregarOpinion_Click(object sender, EventArgs e)
{
int opinion = cbxOpinion.SelectedIndex;
EstadoCivil estadoCivil = cbxEstadoCivil.SelectedIndex == 0 ? EstadoCivil.Casado : EstadoCivil.Soltero;
int rango = cbxRangoEdad.SelectedIndex + 1;
principal.AgregarOpinion(rango, estadoCivil, opinion);
principal.ActualizarResultados();
}
#endregion
}
}