internal void Hinzufuegen(Window window) { var dialog = new PropertyBearbeitenView() { Owner = window }; var viewModel = new PropertyBearbeitenViewModel(GetBlackList(), "", "_Kategorie") { CloseAction = dialog.Close }; dialog.DataContext = viewModel; dialog.ShowDialog(); if (viewModel.IsOk) { var newViewModel = new KategorieViewModel(viewModel.Property) { LoeschenAction = Loeschen, NachObenAction = NachObenSortieren, NachUntenAction = NachUntenSortieren, GetBlackList = GetBlackList }; newViewModel.PropertyChanged += ContentPropertyChanged; KategorienListe.Add(newViewModel); IsDirty = true; } }
private void LadeRechnungen() { List <Kategorie> _tempKategorienListe = model.LadeKategorien(); List <Rechnung> _tempRechnungsListe = new List <Rechnung>(); KategorienListe.Clear(); RechnungsListe.Clear(); if (IstRechnungAktiv && !IstRueckzahlungAktiv) { _tempRechnungsListe = model.LadeRechnungen(""); } if (!IstRechnungAktiv && IstRueckzahlungAktiv) { _tempRechnungsListe = model.LadeRueckzahlungen(""); } _tempRechnungsListe = _tempRechnungsListe.Where(i => i.KreditorID == AktuelleKreditorId).ToList(); if (_tempKategorienListe.Count != 0) { _tempKategorienListe.ForEach(kat => KategorienListe.Add(kat)); AktuelleKategorie = KategorienListe.First(); } if (_tempRechnungsListe.Count != 0) { _tempRechnungsListe.ForEach(re => RechnungsListe.Add(re)); AktuelleRechnung = RechnungsListe.First(); } }
private void Loeschen(string guid) { var item = KategorienListe.First(teil => teil.Guid == guid); _deletedItems.Add(item.Kategorie); KategorienListe.Remove(item); IsDirty = true; }
//Commandhelpers private void NeueRechnung() { AktuelleRechnung = new Rechnung(); AktuelleRechnung.KreditorID = AktuelleKreditorId; KeineNeueRechnungAktiv = false; if (KategorienListe.Any()) { AktuelleKategorie = KategorienListe.First(); UpdateKategorie(AktuelleKategorie.Name); } }
public void NachUntenSortieren(string guid) { var teil1 = KategorienListe.First(teil => teil.Guid == guid); if (teil1 != null && KategorienListe.IndexOf(teil1) + 1 < KategorienListe.Count) { var teil2 = KategorienListe[KategorienListe.IndexOf(teil1) + 1]; if (teil2 != null && teil1.Kategorie != "Gewichtsmessung" && teil2.Kategorie != "Gewichtsmessung") { KategorienListe.Move(KategorienListe.IndexOf(teil1), KategorienListe.IndexOf(teil2)); IsDirty = true; } } }
//Wenn gelöschte Kategorie aktiv ist, wird ein Label zusätzlich mit dem alten Namen gezeigt (nicht mehr speicherbar) private void UpdateKategorie(string kat) { GeloeschteKategorie = kat; if (KategorienListe.Any(i => i.Name == kat)) { AktuelleKategorie = KategorienListe.First(i => i.Name == kat); GeloeschteKategorieAktiv = false; } else { GeloeschteKategorieAktiv = true; if (KategorienListe.Any()) { AktuelleKategorie = KategorienListe.First(); } } }
internal void Zureucksetzen() { KategorienListe.Clear(); _deletedItems.Clear(); var list = new List <string>(); PluginManager.DbManager.GetDateiKategorien(ref list); foreach (var kategorie in list) { var viewModel = new KategorieViewModel(kategorie) { LoeschenAction = Loeschen, NachObenAction = NachObenSortieren, NachUntenAction = NachUntenSortieren, GetBlackList = GetBlackList }; viewModel.PropertyChanged += ContentPropertyChanged; KategorienListe.Add(viewModel); } IsDirty = false; }
public string GetBlackList() { return(KategorienListe.Aggregate(string.Empty, (current, item) => current + (";" + item.Kategorie + ";"))); }
internal void Sichern() { PluginManager.DbManager.SaveDateiKategorien(KategorienListe.Select(item => item.Kategorie).ToList()); IsDirty = false; }