From b2bdcd28876a1b843a60ff1628dffa6f98cf8a3b Mon Sep 17 00:00:00 2001 From: Rene Evertz Date: Thu, 18 Jul 2024 13:44:36 +0200 Subject: [PATCH] =?UTF-8?q?Wohneinheiten=20werden=20alle=20angezeigt,=20ka?= =?UTF-8?q?nn=20sp=C3=A4ter=20auf=20nur=20Wohneinheiten=20mit=20Zimmer=20r?= =?UTF-8?q?eduziert=20werden.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BeWo/View/Controls/WohneinheitEditPopup.xaml | 5 +++-- .../ListViewModel/WohneinheitListVM.cs | 21 ++++++++++++++----- 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/BeWo/View/Controls/WohneinheitEditPopup.xaml b/BeWo/View/Controls/WohneinheitEditPopup.xaml index 42308e4ef..3c93cdcb4 100644 --- a/BeWo/View/Controls/WohneinheitEditPopup.xaml +++ b/BeWo/View/Controls/WohneinheitEditPopup.xaml @@ -31,8 +31,9 @@ + ItemsSource="{Binding Path=WohneinheitListVM.Wohnungsnamen}" + Text="{Binding Path=WohneinheitListVM.CurrentVM.Wohnname}" + ToolTip="Liste der Wohneinheiten ohne Zimmer Bezeichnung"/> _Wohnungsnamen; + public WohneinheitListVM(List pDCs, WohnheimVM parentVm) : base(pDCs) { _Wohnheim = parentVm; @@ -21,6 +24,8 @@ namespace BeWo.ViewModel.ListViewModel { x.Wohnheim = _Wohnheim; }); + + _Wohnungsnamen = new BindingList(GetWohnungsnamen()); } public WohneinheitVM CurrentVM @@ -36,10 +41,14 @@ namespace BeWo.ViewModel.ListViewModel } } - public List Wohnungsnamen => VMList? - .Where(x => !string.IsNullOrEmpty(x.Zimmername)) + public BindingList Wohnungsnamen => _Wohnungsnamen; + + + public List GetWohnungsnamen() => VMList? + .Where(x => !string.IsNullOrEmpty(x.Wohnname)) .Select(x => x.Wohnname)? .Distinct() + .OrderBy(x => x) .ToList() ?? new List(); public override WohneinheitVM AddNewVMToList() @@ -50,18 +59,20 @@ namespace BeWo.ViewModel.ListViewModel CurrentVM = null; - FirePropertyChanged(nameof(Wohnungsnamen)); + _Wohnungsnamen.Clear(); + _Wohnungsnamen.AddRange(GetWohnungsnamen()); return vm; } public void CloseEditVM() { + _Wohnungsnamen.Clear(); + _Wohnungsnamen.AddRange(GetWohnungsnamen()); + EditVM = null; CurrentVM = null; - - FirePropertyChanged(nameof(Wohnungsnamen)); } public void CloseNewVM()