diff --git a/FahzeugWPF/FahrzeugeModell.cs b/FahzeugWPF/FahrzeugeModell.cs index a582d15..59d557a 100644 --- a/FahzeugWPF/FahrzeugeModell.cs +++ b/FahzeugWPF/FahrzeugeModell.cs @@ -21,6 +21,11 @@ class FahrzeugeModell return fahrzeugListe; } + public void LoescheFahrzeug(Fahrzeug fahrzeug) + { + _repository.LoescheFahrzeug(fahrzeug.Id); + } + private IEnumerable KonvertiereFahrzeuge(IEnumerable fahrzeugs) { return fahrzeugs.Select(fahrzeug => KonvertiereFahrzeuf(fahrzeug)); diff --git a/FahzeugWPF/MainWindow.xaml b/FahzeugWPF/MainWindow.xaml index 7f55608..9cc7bcd 100644 --- a/FahzeugWPF/MainWindow.xaml +++ b/FahzeugWPF/MainWindow.xaml @@ -8,7 +8,7 @@ d:DataContext="{d:DesignInstance Type=local:MainWindowViewModel, IsDesignTimeCreatable=False}" Title="{Binding Path=MainWindowTitle}" Height="450" Width="800"> - + + + + + + + diff --git a/FahzeugWPF/MainWindowViewModel.cs b/FahzeugWPF/MainWindowViewModel.cs index 0177d74..5d9d634 100644 --- a/FahzeugWPF/MainWindowViewModel.cs +++ b/FahzeugWPF/MainWindowViewModel.cs @@ -1,6 +1,7 @@ using FahrzeugDatenBank; using System.Collections.ObjectModel; using System.Timers; +using System.Windows.Input; namespace FahzeugWPF; @@ -19,11 +20,19 @@ class MainWindowViewModel : ViewModelBase this._timer.Start(); this._model = modell; this.InitialisiereDasViewModell(); + this.LoeschenKommando = new RelayCommand(LoescheFahrzeug); } - public string MainWindowTitle { get { return _mainWindowTitle; } set { + public ICommand LoeschenKommando { get; private set; } + + public string MainWindowTitle + { + get { return _mainWindowTitle; } + set + { SetProperty(ref _mainWindowTitle, value); - } } + } + } public ObservableCollection Fahrzeuge { get; } = new ObservableCollection(); @@ -40,4 +49,11 @@ class MainWindowViewModel : ViewModelBase { this.MainWindowTitle = $"Fahrzeuge {DateTime.Now.ToLongTimeString()}"; } + + private void LoescheFahrzeug(object? fahrzeug) + { + if (fahrzeug == null) return; + _model.LoescheFahrzeug((Fahrzeug)fahrzeug); + this.Fahrzeuge.Remove((Fahrzeug)fahrzeug); + } }