private void DateSelected() { Mes = Date.ToString("MMMM", culture); MesExcel = Date.ToString("MMM", culture); Anio = Date.ToString("yyyy", culture); SumaIngreso = ListaIngresos.Where(x => x.Mes == Date.ToString("MMM", culture) && x.Anio == Date.ToString("yyyy", culture)).ToList().Sum(x => double.Parse(x.IngresoCantidad)).ToString(); CollectionIngresos = new ObservableCollection <Ingresos>(ListaIngresos.Where(x => x.Mes == Date.ToString("MMM", culture) && x.Anio == Date.ToString("yyyy", culture)).OrderByDescending(x => double.Parse(x.Dia)).ToList()); }
public void Editar(Ingresos ingresos) { var ingresoAntiguo = ListaIngresos.Find(x => x.IngresoId == ingresos.IngresoId); ingresoAntiguo = ingresos; dataService.Update(ingresoAntiguo, true); SumaIngreso = ListaIngresos.Where(x => x.Mes == Date.ToString("MMM", culture) && x.Anio == Date.ToString("yyyy", culture)).ToList().Sum(x => double.Parse(x.IngresoCantidad)).ToString(); CollectionIngresos = new ObservableCollection <Ingresos>(ListaIngresos.OrderByDescending(x => double.Parse(x.Dia)).ToList()); instanciarPaginasService.Instanciar(); }
private async void AgregarIngreso() { //Crea el objeto Ingreso, lo agrego a la lista del mes, y después se hace la sumatoria de la lista if (MontoIngreso == "0" || string.IsNullOrEmpty(MontoIngreso) || string.IsNullOrWhiteSpace(MontoIngreso)) { await dialogService.ShowMessage("Error", "Debe asignar un valor mayor que cero"); return; } Ingresos = new Ingresos(); Ingresos.Anio = Date.ToString("yyyy", culture); Ingresos.Mes = Date.ToString("MMM", culture); Ingresos.Dia = Date.ToString("dd", culture); Ingresos.ImagenFecha = "date"; if (string.IsNullOrEmpty(OrigenIngreso)) { OrigenIngreso = "Sin Origen"; } Ingresos.IngresoNombre = string.Format("{0}{1}", OrigenIngreso.Substring(0, 1).ToUpper(), OrigenIngreso.Substring(1)); Ingresos.ImagenOrigen = "income"; if (MontoIngreso == null) { MontoIngreso = 0.ToString(); } if (!double.TryParse(MontoIngreso, out double result)) { await dialogService.ShowMessage("Error", "El contenido del monto debe ser un número"); MontoIngreso = null; return; } if (MontoIngreso.Contains("-")) { Ingresos.IngresoCantidad = MontoIngreso.Replace("-", ""); } else { Ingresos.IngresoCantidad = string.Format("{0}", MontoIngreso); } Ingresos.ImagenMonto = "money"; ListaIngresos.Add(Ingresos); //Realizar la sumatoria con los ingresos pertenecientes al mes y año elegido SumaIngreso = ListaIngresos.Where(x => x.Mes == Ingresos.Mes && x.Anio == Ingresos.Anio).ToList().Sum(x => double.Parse(x.IngresoCantidad)).ToString(); MontoIngreso = null; OrigenIngreso = null; dataService.Save(ListaIngresos, true); CollectionIngresos = new ObservableCollection <Ingresos>(ListaIngresos.Where(x => x.Mes == Ingresos.Mes && x.Anio == Ingresos.Anio).OrderByDescending(x => double.Parse(x.Dia)).ToList()); instanciarPaginasService.Instanciar(); }
public async void Delete(Ingresos ingresos) { var confirmacion = await dialogService.ShowMessageConfirmacion("Mensaje", "¿Desea borrar este elemento?"); if (confirmacion) { var ingresoAntiguo = ListaIngresos.Find(x => x.IngresoId == ingresos.IngresoId); dataService.Delete(ingresoAntiguo); ListaIngresos.Remove(ingresoAntiguo); SumaIngreso = ListaIngresos.Where(x => x.Mes == Date.ToString("MMM", culture) && x.Anio == Date.ToString("yyyy", culture)).ToList().Sum(x => double.Parse(x.IngresoCantidad)).ToString(); CollectionIngresos = new ObservableCollection <Ingresos>(ListaIngresos.OrderByDescending(x => double.Parse(x.Dia)).ToList()); instanciarPaginasService.Instanciar(); } else { return; } }
public async void ClickSwitch(object obj) { switch (obj.ToString()) { case "GenerarReporte": if (!pConsultar) { ReportViewerVisible = Visibility.Collapsed; new Dialogos().ConfirmacionDialogo("Validación", "Su usuario no tiene privilegios para realizar esta acción"); break; } if (!ListaIngresosSeleccionados.Any()) { var mensaje = System.Windows.Application.Current.Windows[0] as MetroWindow; var mySettings = new MetroDialogSettings() { AffirmativeButtonText = "Cerrar", AnimateShow = true, AnimateHide = false }; ReportViewerVisible = Visibility.Collapsed; await mensaje.ShowMessageAsync("Validación", "Debe seleccionar al menos un interno para generar el reporte.", MessageDialogStyle.Affirmative, mySettings); ReportViewerVisible = Visibility.Visible; } else { ReportViewerVisible = Visibility.Collapsed; Reporte.Reset(); await StaticSourcesViewModel.CargarDatosMetodoAsync(() => { GenerarReporte(); }); ReportViewerVisible = Visibility.Visible; } break; case "ObtenerIngresos": try { if (!pConsultar) { ReportViewerVisible = Visibility.Collapsed; new Dialogos().ConfirmacionDialogo("Validación", "Su usuario no tiene privilegios para realizar esta acción"); break; } ReportViewerVisible = Visibility.Collapsed; await StaticSourcesViewModel.CargarDatosMetodoAsync(() => { Pagina = 1; ListaIngresos = new List <cCredencialBiblioteca>(); EmptyVisible = true; ObtenerIngresos(); }); ReportViewerVisible = Visibility.Visible; } catch (Exception ex) { throw new ApplicationException(ex.Message); } break; case "Permitir": if (!SelectedIngreso.Seleccionado) { SeleccionarTodosIngresos = false; } else { SeleccionarTodosIngresos = !ListaIngresos.Where(w => !w.Seleccionado).Any(); } break; case "SeleccionarTodosIngresos": if (ListaIngresos.Any()) { var lista_ingresos = new List <cCredencialBiblioteca>(ListaIngresos); foreach (var Ingreso in lista_ingresos) { Ingreso.Seleccionado = SeleccionarTodosIngresos; } ListaIngresos = lista_ingresos; } else { SeleccionarTodosIngresos = false; } break; case "PermitirSeleccionado": if (!SelectedIngresoSeleccionado.Seleccionado) { SeleccionarTodosIngresosSeleccionados = false; } else { SeleccionarTodosIngresosSeleccionados = !ListaIngresosSeleccionados.Where(w => !w.Seleccionado).Any(); } break; case "SeleccionarTodosIngresosSeleccionados": if (ListaIngresosSeleccionados.Any()) { var lista_ingresos_Seleccionados = new List <cCredencialBiblioteca>(ListaIngresosSeleccionados); foreach (var Ingreso in lista_ingresos_Seleccionados) { Ingreso.Seleccionado = SeleccionarTodosIngresosSeleccionados; } ListaIngresosSeleccionados = lista_ingresos_Seleccionados; } else { SeleccionarTodosIngresosSeleccionados = false; } break; case "AgregarInternos": if (ListaIngresos.Any()) { if (ListaIngresos.Where(w => w.Seleccionado).Any()) { var lista_ingresos = new List <cCredencialBiblioteca>(ListaIngresos); var lista_ingresos_Seleccionados = new List <cCredencialBiblioteca>( ListaIngresos.Where(w => w.Seleccionado). OrderByDescending(oD => oD.Id_Anio). ThenByDescending(tD => tD.Id_Imputado). ToList()); foreach (var ingreso_Seleccionado in lista_ingresos_Seleccionados) { ingreso_Seleccionado.Seleccionado = false; lista_ingresos.Remove(ingreso_Seleccionado); } ListaIngresos = lista_ingresos.Any() ? lista_ingresos.OrderByDescending(oD => oD.Id_Anio).ThenByDescending(tD => tD.Id_Imputado).ToList() : new List <cCredencialBiblioteca>(); EmptyVisible = !ListaIngresos.Any(); EmptySeleccionadosVisible = false; ListaIngresosSeleccionados.AddRange(lista_ingresos_Seleccionados); ListaIngresosSeleccionados = ListaIngresosSeleccionados.OrderByDescending(oD => oD.Id_Anio).ThenByDescending(tD => tD.Id_Imputado).ToList(); SeleccionarTodosIngresos = false; } else { var mensaje = System.Windows.Application.Current.Windows[0] as MetroWindow; var mySettings = new MetroDialogSettings() { AffirmativeButtonText = "Cerrar", AnimateShow = true, AnimateHide = false }; ReportViewerVisible = Visibility.Collapsed; await mensaje.ShowMessageAsync("Validación", "Debe seleccionar al menos un interno.", MessageDialogStyle.Affirmative, mySettings); ReportViewerVisible = Visibility.Visible; } } else { var mensaje = System.Windows.Application.Current.Windows[0] as MetroWindow; var mySettings = new MetroDialogSettings() { AffirmativeButtonText = "Cerrar", AnimateShow = true, AnimateHide = false }; ReportViewerVisible = Visibility.Collapsed; await mensaje.ShowMessageAsync("Validación", "Lista de internos vacía. Realice una búsqueda e intente de nuevo.", MessageDialogStyle.Affirmative, mySettings); ReportViewerVisible = Visibility.Visible; } break; case "RemoverInternos": if (ListaIngresosSeleccionados.Any()) { if (ListaIngresosSeleccionados.Where(w => w.Seleccionado).Any()) { var lista_ingresos = new List <cCredencialBiblioteca>(ListaIngresosSeleccionados); var lista_ingresos_Seleccionados = new List <cCredencialBiblioteca>( ListaIngresosSeleccionados.Where(w => w.Seleccionado). OrderByDescending(oD => oD.Id_Anio). ThenByDescending(tD => tD.Id_Imputado). ToList()); foreach (var ingreso_Seleccionado in lista_ingresos_Seleccionados) { ingreso_Seleccionado.Seleccionado = false; lista_ingresos.Remove(ingreso_Seleccionado); } ListaIngresosSeleccionados = lista_ingresos.Any() ? lista_ingresos.OrderByDescending(oD => oD.Id_Anio).ThenByDescending(tD => tD.Id_Imputado).ToList() : new List <cCredencialBiblioteca>(); EmptySeleccionadosVisible = !ListaIngresosSeleccionados.Any(); EmptyVisible = false; ListaIngresos.AddRange(lista_ingresos_Seleccionados); ListaIngresos = ListaIngresos.OrderByDescending(oD => oD.Id_Anio).ThenByDescending(tD => tD.Id_Imputado).ToList(); SeleccionarTodosIngresosSeleccionados = false; } else { var mensaje = System.Windows.Application.Current.Windows[0] as MetroWindow; var mySettings = new MetroDialogSettings() { AffirmativeButtonText = "Cerrar", AnimateShow = true, AnimateHide = false }; ReportViewerVisible = Visibility.Collapsed; await mensaje.ShowMessageAsync("Validación", "Debe seleccionar al menos un interno.", MessageDialogStyle.Affirmative, mySettings); ReportViewerVisible = Visibility.Visible; } } else { var mensaje = System.Windows.Application.Current.Windows[0] as MetroWindow; var mySettings = new MetroDialogSettings() { AffirmativeButtonText = "Cerrar", AnimateShow = true, AnimateHide = false }; ReportViewerVisible = Visibility.Collapsed; await mensaje.ShowMessageAsync("Validación", "Lista de internos Seleccionados vacía.", MessageDialogStyle.Affirmative, mySettings); ReportViewerVisible = Visibility.Visible; } break; } }
private async void Excel() { var ingresosView = IngresosView.GetInstance(); var confirmacion = await dialogService.ShowMessageConfirmacion("Mensaje", "¿Desea exportar los ingresos a una planilla de cálculo?"); if (confirmacion) { try { DateSelected(); if (ListaIngresos.Count == 0) { await dialogService.ShowMessage("Error", "Se deben agregar elementos al balance"); ingresosView.excelUnTapped(); return; } using (ExcelEngine excelEngine = new ExcelEngine()) { cont = 0; //Seleccionar versión de Excel 2013 excelEngine.Excel.DefaultVersion = ExcelVersion.Excel2013; //Crear workbook con una hoja de trabajo IWorkbook workbook = excelEngine.Excel.Workbooks.Create(1); //Acceder a la primera hoja de trabajo desde la instancia de workbook IWorksheet worksheet = workbook.Worksheets[0]; IMigrantRange migrantRange = worksheet.MigrantRange; foreach (var elemento in ListaIngresos.Where(x => x.Mes.Equals(MesExcel) && x.Anio.Equals(Anio)).ToList()) { // Writing Data. //cont aumenta en 7 la posición de las filas en cada producto, las columnas dependen de los días elegidos migrantRange["A1"].Text = "Fecha"; migrantRange["A1"].CellStyle.Font.Bold = true; migrantRange["B1"].Text = "Ingreso"; migrantRange["B1"].CellStyle.Font.Bold = true; migrantRange["C1"].Text = "Monto"; migrantRange["C1"].CellStyle.Font.Bold = true; //Nueva celda migrantRange.ResetRowColumn(cont + 2, 1); migrantRange.Text = string.Format("{0}/{1}/{2}", elemento.Dia, elemento.Mes, elemento.Anio); //migrantRange.CellStyle.Borders.LineStyle = ExcelLineStyle.Medium; //Nueva celda migrantRange.ResetRowColumn(cont + 2, 2); migrantRange.Text = elemento.IngresoNombre; //Nueva celda migrantRange.ResetRowColumn(cont + 2, 3); migrantRange.Number = double.Parse(elemento.IngresoCantidad); if (double.Parse(elemento.IngresoCantidad) > 0) { worksheet[string.Format("C{0}", cont + 2)].CellStyle.Font.Color = ExcelKnownColors.Green; } else if (double.Parse(elemento.IngresoCantidad) < 0) { worksheet[string.Format("C{0}", cont + 2)].CellStyle.Font.Color = ExcelKnownColors.Red; } cont = cont + 1; } ; IRange range = worksheet.Range[string.Format("A{0}:B{0}", cont + 2)]; range.Merge(); range.Text = string.Format("Balance de Ingresos: "); range.CellStyle.HorizontalAlignment = ExcelHAlign.HAlignCenter; range.CellStyle.Font.Bold = true; worksheet[string.Format("C{0}", cont + 2)].Number = double.Parse(SumaIngreso); worksheet[string.Format("C{0}", cont + 2)].CellStyle.Font.Bold = true; if (double.Parse(SumaIngreso) > 0) { worksheet[string.Format("C{0}", cont + 2)].CellStyle.ColorIndex = ExcelKnownColors.Green; } else if (double.Parse(SumaIngreso) < 0) { worksheet[string.Format("C{0}", cont + 2)].CellStyle.ColorIndex = ExcelKnownColors.Red; } worksheet.Range[string.Format("A1:C{0}", cont + 2)].BorderInside(); worksheet.Range[string.Format("A1:C{0}", cont + 2)].BorderAround(); worksheet.UsedRange.AutofitColumns(); //Save the workbook to stream in xlsx format. MemoryStream stream = new MemoryStream(); workbook.SaveAs(stream); workbook.Close(); //Save the stream as a file in the device and invoke it for viewing DependencyService.Get <ISave>().SaveAndView(string.Format("Balance Mensual de Ingresos {0}-{1}", MesExcel, Anio) + ".xlsx", "application/msexcel", stream); await dialogService.ShowMessage("Mensaje", string.Format("El balance se guardó como archivo de nombre '{0}' en la carpeta Balances", string.Format("Balance Mensual de Ingresos {0}-{1}", MesExcel, Anio) + ".xlsx")); } } catch (Exception e) { await dialogService.ShowMessage("Error", "No se pudo exportar a hoja de cálculo. Intenta habilitando los permisos en ajustes."); } } ingresosView.excelUnTapped(); }
public async void ClickSwitch(object obj) { switch (obj.ToString()) { case "GenerarReporte": if (!ListaIngresosSeleccionados.Any()) { var mensaje = System.Windows.Application.Current.Windows[0] as MetroWindow; var mySettings = new MetroDialogSettings() { AffirmativeButtonText = "Cerrar", AnimateShow = true, AnimateHide = false }; BrazaleteReportViewerVisible = Visibility.Collapsed; GafeteReportViewerVisible = Visibility.Collapsed; await mensaje.ShowMessageAsync("Validación", "Debe seleccionar al menos un interno para generar el reporte.", MessageDialogStyle.Affirmative, mySettings); BrazaleteReportViewerVisible = BrazaleteSelected ? Visibility.Visible : Visibility.Collapsed; GafeteReportViewerVisible = GafeteSelected ? Visibility.Visible : Visibility.Collapsed; } else { Reporte.Reset(); if (BrazaleteSelected) { BrazaleteReportViewerVisible = Visibility.Collapsed; GenerarReporte(enumTipoReporte.BRAZALETE); BrazaleteReportViewerVisible = Visibility.Visible; } else { GafeteReportViewerVisible = Visibility.Collapsed; GenerarReporte(enumTipoReporte.GAFETE); GafeteReportViewerVisible = Visibility.Visible; } } break; case "ObtenerIngresos": try { System.Windows.Application.Current.Dispatcher.Invoke((System.Action)(delegate { BrazaleteReportViewerVisible = Visibility.Collapsed; GafeteReportViewerVisible = Visibility.Collapsed; })); await StaticSourcesViewModel.CargarDatosMetodoAsync(() => { Pagina = 1; ListaIngresos = new List <cInternoGafeteBrazalete>(); EmptyVisible = true; ObtenerIngresos(); }); System.Windows.Application.Current.Dispatcher.Invoke((System.Action)(delegate { BrazaleteReportViewerVisible = BrazaleteSelected ? Visibility.Visible : Visibility.Collapsed; GafeteReportViewerVisible = GafeteSelected ? Visibility.Visible : Visibility.Collapsed; })); } catch (Exception ex) { throw new ApplicationException(ex.Message); } break; case "Permitir": if (!SelectedIngreso.SELECCIONADO) { SeleccionarTodosIngresos = false; } else { SeleccionarTodosIngresos = !ListaIngresos.Where(w => !w.SELECCIONADO).Any(); } break; case "SeleccionarTodosIngresos": if (ListaIngresos.Any()) { var lista_ingresos = new List <cInternoGafeteBrazalete>(ListaIngresos); foreach (var Ingreso in lista_ingresos) { Ingreso.SELECCIONADO = SeleccionarTodosIngresos; } ListaIngresos = lista_ingresos; } else { SeleccionarTodosIngresos = false; } break; case "PermitirSeleccionado": if (!SelectedIngresoSeleccionado.SELECCIONADO) { SeleccionarTodosIngresosSeleccionados = false; } else { SeleccionarTodosIngresosSeleccionados = !ListaIngresosSeleccionados.Where(w => !w.SELECCIONADO).Any(); } break; case "SeleccionarTodosIngresosSeleccionados": if (ListaIngresosSeleccionados.Any()) { var lista_ingresos_seleccionados = new List <cInternoGafeteBrazalete>(ListaIngresosSeleccionados); foreach (var Ingreso in lista_ingresos_seleccionados) { Ingreso.SELECCIONADO = SeleccionarTodosIngresosSeleccionados; } ListaIngresosSeleccionados = lista_ingresos_seleccionados; } else { SeleccionarTodosIngresosSeleccionados = false; } break; case "AgregarInternos": if (ListaIngresos.Any()) { if (ListaIngresos.Where(w => w.SELECCIONADO).Any()) { var lista_ingresos = new List <cInternoGafeteBrazalete>(ListaIngresos); var lista_ingresos_seleccionados = new List <cInternoGafeteBrazalete>( ListaIngresos.Where(w => w.SELECCIONADO). OrderByDescending(oD => oD.ID_ANIO). ThenByDescending(tD => tD.ID_IMPUTADO). ToList()); foreach (var ingreso_seleccionado in lista_ingresos_seleccionados) { ingreso_seleccionado.SELECCIONADO = false; lista_ingresos.Remove(ingreso_seleccionado); } ListaIngresos = lista_ingresos.Any() ? lista_ingresos.OrderByDescending(oD => oD.ID_ANIO).ThenByDescending(tD => tD.ID_IMPUTADO).ToList() : new List <cInternoGafeteBrazalete>(); EmptyVisible = !ListaIngresos.Any(); EmptySeleccionadosVisible = false; ListaIngresosSeleccionados.AddRange(lista_ingresos_seleccionados); ListaIngresosSeleccionados = ListaIngresosSeleccionados.OrderByDescending(oD => oD.ID_ANIO).ThenByDescending(tD => tD.ID_IMPUTADO).ToList(); SeleccionarTodosIngresos = false; } else { var mensaje = System.Windows.Application.Current.Windows[0] as MetroWindow; var mySettings = new MetroDialogSettings() { AffirmativeButtonText = "Cerrar", AnimateShow = true, AnimateHide = false }; BrazaleteReportViewerVisible = Visibility.Collapsed; GafeteReportViewerVisible = Visibility.Collapsed; await mensaje.ShowMessageAsync("Validación", "Debe seleccionar al menos un interno.", MessageDialogStyle.Affirmative, mySettings); BrazaleteReportViewerVisible = BrazaleteSelected ? Visibility.Visible : Visibility.Collapsed; GafeteReportViewerVisible = GafeteSelected ? Visibility.Visible : Visibility.Collapsed; } } else { var mensaje = System.Windows.Application.Current.Windows[0] as MetroWindow; var mySettings = new MetroDialogSettings() { AffirmativeButtonText = "Cerrar", AnimateShow = true, AnimateHide = false }; BrazaleteReportViewerVisible = Visibility.Collapsed; GafeteReportViewerVisible = Visibility.Collapsed; await mensaje.ShowMessageAsync("Validación", "Lista de internos vacía. Realice una búsqueda e intente de nuevo.", MessageDialogStyle.Affirmative, mySettings); BrazaleteReportViewerVisible = BrazaleteSelected ? Visibility.Visible : Visibility.Collapsed; GafeteReportViewerVisible = GafeteSelected ? Visibility.Visible : Visibility.Collapsed; } break; case "RemoverInternos": if (ListaIngresosSeleccionados.Any()) { if (ListaIngresosSeleccionados.Where(w => w.SELECCIONADO).Any()) { var lista_ingresos = new List <cInternoGafeteBrazalete>(ListaIngresosSeleccionados); var lista_ingresos_seleccionados = new List <cInternoGafeteBrazalete>( ListaIngresosSeleccionados.Where(w => w.SELECCIONADO). OrderByDescending(oD => oD.ID_ANIO). ThenByDescending(tD => tD.ID_IMPUTADO). ToList()); foreach (var ingreso_seleccionado in lista_ingresos_seleccionados) { ingreso_seleccionado.SELECCIONADO = false; lista_ingresos.Remove(ingreso_seleccionado); } ListaIngresosSeleccionados = lista_ingresos.Any() ? lista_ingresos.OrderByDescending(oD => oD.ID_ANIO).ThenByDescending(tD => tD.ID_IMPUTADO).ToList() : new List <cInternoGafeteBrazalete>(); EmptySeleccionadosVisible = !ListaIngresosSeleccionados.Any(); EmptyVisible = false; ListaIngresos.AddRange(lista_ingresos_seleccionados); ListaIngresos = ListaIngresos.OrderByDescending(oD => oD.ID_ANIO).ThenByDescending(tD => tD.ID_IMPUTADO).ToList(); SeleccionarTodosIngresosSeleccionados = false; } else { var mensaje = System.Windows.Application.Current.Windows[0] as MetroWindow; var mySettings = new MetroDialogSettings() { AffirmativeButtonText = "Cerrar", AnimateShow = true, AnimateHide = false }; BrazaleteReportViewerVisible = Visibility.Collapsed; GafeteReportViewerVisible = Visibility.Collapsed; await mensaje.ShowMessageAsync("Validación", "Debe seleccionar al menos un interno.", MessageDialogStyle.Affirmative, mySettings); BrazaleteReportViewerVisible = BrazaleteSelected ? Visibility.Visible : Visibility.Collapsed; GafeteReportViewerVisible = GafeteSelected ? Visibility.Visible : Visibility.Collapsed; } } else { var mensaje = System.Windows.Application.Current.Windows[0] as MetroWindow; var mySettings = new MetroDialogSettings() { AffirmativeButtonText = "Cerrar", AnimateShow = true, AnimateHide = false }; BrazaleteReportViewerVisible = Visibility.Collapsed; GafeteReportViewerVisible = Visibility.Collapsed; await mensaje.ShowMessageAsync("Validación", "Lista de internos seleccionados vacía.", MessageDialogStyle.Affirmative, mySettings); BrazaleteReportViewerVisible = BrazaleteSelected ? Visibility.Visible : Visibility.Collapsed; GafeteReportViewerVisible = GafeteSelected ? Visibility.Visible : Visibility.Collapsed; } break; } }