public Empleado(DatosPersonales datos)
 {
     this.datos = datos;
 }
 public EmpleadoSindicalizado(DatosPersonales datos, double salarioBase, int horasExtra, double salarioXHoraExtra)
     : base(datos, salarioBase)
 {
     this.horasExtra        = horasExtra;
     this.salarioXHoraExtra = salarioXHoraExtra;
 }
 public EmpleadoBase(DatosPersonales datos, double salarioBase)
     : base(datos)
 {
     this.salarioBase = salarioBase;
 }
 //Constructor.
 public EmpleadoJornada(DatosPersonales datos, int dias, double salarioXDia)
     : base(datos)
 {
     this.numeroDias  = dias;
     this.salarioXDia = salarioXDia;
 }
        private void btnAñadir_Click(object sender, RoutedEventArgs e)
        {
            DatosPersonales datos;

            if (nombreImagen == "")
            {
                Uri nombre = new Uri("/ProyectoEmpleado;component/sources/usuarioAñadir.png", UriKind.Relative);
                datos = new DatosPersonales(txtNombre.Text, txtDireccion.Text, txtEmail.Text, txtTelefono.Text, nombre.ToString());
            }
            else
            {
                datos = new DatosPersonales(txtNombre.Text, txtDireccion.Text, txtEmail.Text, txtTelefono.Text, nombreImagen);
            }

            nombreImagen = "";
            Empleado empleado = null;

            try {
                if (cmbEmpleado.SelectedIndex == 0) //Empleado base.
                {
                    double salario = Convert.ToDouble(txtBase_Base.Text);
                    empleado = new EmpleadoBase(datos, salario);
                }
                else if (cmbEmpleado.SelectedIndex == 1) //Empleado jornada.
                {
                    int    dias        = Convert.ToInt32(txtSalario_Jornada.Text);
                    double salarioXDia = Convert.ToDouble(txtDias_Jornada.Text);
                    empleado = new EmpleadoJornada(datos, dias, salarioXDia);
                }
                else
                {
                    double salarioBase       = Convert.ToDouble(txtSalario_Sindicalizado.Text);
                    int    horasExtras       = Convert.ToInt32(txtHoras_Sindicalizado.Text);
                    double salarioXHoraExtra = Convert.ToDouble(txtSalarioExtra_Sindicalizado.Text);
                    empleado = new EmpleadoSindicalizado(datos, salarioBase, horasExtras, salarioXHoraExtra);
                }

                if (empleado != null)
                {
                    MainWindow.lista.Add(empleado);
                    MessageBox.Show("Empleado Añadido Exitosamente :)");
                    txtNombre.Text                     = "";
                    txtDireccion.Text                  = "";
                    txtEmail.Text                      = "";
                    txtTelefono.Text                   = "";
                    txtBase_Base.Text                  = "";
                    txtDias_Jornada.Text               = "";
                    txtSalario_Jornada.Text            = "";
                    txtHoras_Sindicalizado.Text        = "";
                    txtSalario_Sindicalizado.Text      = "";
                    txtSalarioExtra_Sindicalizado.Text = "";

                    BitmapImage imagen = new BitmapImage();
                    imagen.BeginInit();
                    imagen.UriSource = new Uri("/ProyectoEmpleado;component/sources/usuarioAñadir.png", UriKind.RelativeOrAbsolute);
                    imagen.EndInit();
                    imagenEmpleado.Source = imagen;
                }
            }catch (Exception) {
                MessageBox.Show("Datos Inválidos.");
            }
        }