private bool Validate() { bool bReturn = false; switch (AktuellerDatenbankModus) { case DatenbankModus.SingleSelection: { bReturn = SelectedItem == null; break; } case DatenbankModus.MultiSelection: { bReturn = !Datenbankteile.Any(item => item.IsChecked); break; } case DatenbankModus.HerstellerKategorieSelection: { bool herstellerOk = true; bool kategorieOk = true; if (HerstellerList.Count == 0 || SelectedHersteller.Key == null) { herstellerOk = false; } if (KategorienList.Count == 0) { kategorieOk = false; } else { foreach (var item in KategorienList) { if (item.IsSelected && item.EnthaeltProdukte) { break; } kategorieOk = IsAnySelected(item); if (kategorieOk) { break; } } } bReturn = !(herstellerOk && kategorieOk); break; } } return(bReturn); }
public void OnSuchen(Window window) { var selectedKategorie = string.Empty; foreach (var item in KategorienList) { selectedKategorie = GetSelectedKategorie(item); if (!string.IsNullOrWhiteSpace(selectedKategorie)) { break; } } var progressWindow = new WaitWindow(AusgewaelteDatenbank, UserApiToken, HerstellerSuchen ? SelectedHersteller.Key : "", KategorieSuchen ? selectedKategorie : "", "") { Owner = window }; progressWindow.ShowDialog(); if (progressWindow.Success) { Datenbankteile.Clear(); foreach (var item in progressWindow.ResultList) { if (AktuellerDatenbankModus == DatenbankModus.NoneSelection) { item.EinbauenAction = EinbauenAction; item.TauschenAction = TauschenAction; item.Differenz = SelectedTeilGewicht == -1 ? 0 : item.Gewicht - SelectedTeilGewicht; } item.PropertyChanged += ContentPropertyChanged; Datenbankteile.Add(item); } SelectedItem = null; UpdateProperty("KeineTeileVisible"); } else { HilfsFunktionen.ShowMessageBox(window, "Teileliste", progressWindow.ErrorText, true); } }