private void EliminarIngresoAnteriorMenor()
 {
     try
     {
         if (SelectedIngresoAnteriorMenor != null)
         {
             LstIngresosAnterioresMenor.Remove(SelectedIngresoAnteriorMenor);
             EmptyIngresosAnterioresMenores = LstIngresosAnterioresMenor.Count > 0 ? false : true;
         }
     }
     catch (Exception ex)
     {
         StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error al eliminar ingreso anterior menor", ex);
     }
 }
 //MENORES
 private void AgregarIngresoAnteriorMenor()
 {
     try
     {
         if (LstIngresosAnterioresMenor == null)
         {
             LstIngresosAnterioresMenor = new ObservableCollection <EMI_INGRESO_ANTERIOR>();
         }
         if (SelectedIngresoAnteriorMenor == null) //agregamos un nuevo ingreso
         {                                         ///TODO: cambios delito
             LstIngresosAnterioresMenor.Add(new EMI_INGRESO_ANTERIOR()
             {
                 ID_TIPO           = 1,
                 ID_EMISOR         = selectedEmisorIngreso.ID_EMISOR,
                 PERIODO_RECLUSION = PeriodoReclusionIngreso,
                 SANCIONES         = SancionesIngreso,
                 ID_DELITO         = SelectedDelitoIngreso.ID_DELITO,
                 ID_FUERO          = SelectedDelitoIngreso.ID_FUERO,
                 EMISOR            = SelectedEmisorIngreso,
                 DELITO            = DelitoDescripcion,
                 //DELITO = SelectedDelitoIngreso
             });
         }
         else//editamos un ingreso
         {///TODO: cambios delito
             SelectedIngresoAnteriorMenor.ID_EMISOR         = selectedEmisorIngreso.ID_EMISOR;
             SelectedIngresoAnteriorMenor.PERIODO_RECLUSION = PeriodoReclusionIngreso;
             SelectedIngresoAnteriorMenor.SANCIONES         = SancionesIngreso;
             SelectedIngresoAnteriorMenor.ID_DELITO         = /*SelectedDelitoIngreso != null ? SelectedDelitoIngreso.ID_DELITO : */ new long?();
             SelectedIngresoAnteriorMenor.ID_FUERO          = /*SelectedDelitoIngreso != null ? SelectedDelitoIngreso.ID_FUERO : */ string.Empty;
             SelectedIngresoAnteriorMenor.EMISOR            = SelectedEmisorIngreso;
             SelectedIngresoAnteriorMenor.DELITO            = DelitoDescripcion;
             //SelectedIngresoAnteriorMenor.DELITO = SelectedDelitoIngreso;
             LstIngresosAnterioresMenor = new ObservableCollection <EMI_INGRESO_ANTERIOR>(LstIngresosAnterioresMenor);
         }
         EmptyIngresosAnterioresMenores = LstIngresosAnterioresMenor.Count > 0 ? false : true;
         //LIMPIAMOS LOS CAMPOS
         LimpiarIngresoanterior();
     }
     catch (Exception ex)
     {
         StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error al agregar ingreso anterior menor", ex);
     }
 }
        //private void PopulateIngresosAnterioresMenores()
        //{
        //    if (emiActual != null)
        //    {
        //        LstIngresosAnterioresMenor = new ObservableCollection<EMI_INGRESO_ANTERIOR>(new cEMIIngresosAnteriores().Obtener(emiActual.ID_EMI, emiActual.ID_EMI_CONS, 1));
        //        if (LstIngresosAnterioresMenor != null)
        //        {
        //            if (LstIngresosAnterioresMenor.Count > 0)
        //                EmptyIngresosAnterioresMenores = false;
        //            else
        //                EmptyIngresosAnterioresMenores = true;
        //        }
        //        else
        //        {
        //            EmptyIngresosAnteriores = true;
        //        }
        //    }
        //    else
        //    {
        //        LstIngresosAnterioresMenor = new ObservableCollection<EMI_INGRESO_ANTERIOR>();
        //        EmptyIngresosAnterioresMenores = true;
        //    }
        //}

        private void OnBuscarIngresoMenor(string obj = "")
        {
            try
            {
                PopUpsViewModels.ShowPopUp(this, PopUpsViewModels.TipoPopUp.HUELLAS);
                var windowBusqueda = new BuscarIngresoMenorView();
                windowBusqueda.DataContext = new BuscarIngresoMenorViewModel(LstIngresosAnterioresMenor);
                windowBusqueda.KeyDown    += (s, e) => {
                    try
                    {
                        if (e.Key == System.Windows.Input.Key.Escape)
                        {
                            windowBusqueda.Close();
                        }
                    }
                    catch (Exception ex)
                    {
                        StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error en la búsqueda del ingreso menor", ex);
                    }
                };
                windowBusqueda.Closed += (s, e) =>
                {
                    try
                    {
                        PopUpsViewModels.ClosePopUp(PopUpsViewModels.TipoPopUp.HUELLAS);

                        if (!((BuscarIngresoMenorViewModel)windowBusqueda.DataContext).IsSucceed)
                        {
                            return;
                        }

                        if (((BuscarIngresoMenorViewModel)windowBusqueda.DataContext).LstIngAntMen != null)
                        {
                            var anteriores = ((BuscarIngresoMenorViewModel)windowBusqueda.DataContext).LstIngAntMen;
                            foreach (var anterior in anteriores)
                            {
                                if (LstIngresosAnterioresMenor == null)
                                {
                                    LstIngresosAnterioresMenor = new ObservableCollection <EMI_INGRESO_ANTERIOR>();
                                }
                                LstIngresosAnterioresMenor.Add(new EMI_INGRESO_ANTERIOR()
                                {
                                    ID_TIPO           = 1,
                                    ID_EMISOR         = anterior.ID_EMISOR,
                                    PERIODO_RECLUSION = anterior.PERIODO_RECLUSION,
                                    SANCIONES         = anterior.SANCIONES,
                                    ID_FUERO          = anterior.ID_FUERO,
                                    ID_DELITO         = anterior.ID_DELITO,
                                    ID_CENTRO         = anterior.ID_CENTRO,
                                    ID_ANIO           = anterior.ID_ANIO,
                                    ID_IMPUTADO       = anterior.ID_IMPUTADO,
                                    ID_INGRESO        = anterior.ID_INGRESO,
                                    DELITO            = anterior.DELITO,
                                    EMISOR            = anterior.EMISOR,
                                });
                            }
                            EmptyIngresosAnterioresMenores = LstIngresosAnterioresMenor.Count > 0 ? false : true;
                        }
                        //    LstIngresosAnterioresMenor = new ObservableCollection<EMI_INGRESO_ANTERIOR>(((BuscarIngresoMenorViewModel)windowBusqueda.DataContext).LstIngAntMen);
                        //else
                        //    LstIngresosAnterioresMenor = new ObservableCollection<EMI_INGRESO_ANTERIOR>();
                    }
                    catch (Exception ex)
                    {
                        StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error en al cerrar búsqueda", ex);
                    }
                };
                windowBusqueda.ShowDialog();
            }
            catch (Exception ex)
            {
                StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error en la búsqueda del ingreso menor", ex);
            }
        }