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;
            }
        }
示例#2
0
        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;
        }
示例#4
0
 //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;
                }
            }
        }
示例#6
0
 //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;
        }