Löschen Knopf
This commit is contained in:
@@ -21,6 +21,11 @@ class FahrzeugeModell
|
||||
return fahrzeugListe;
|
||||
}
|
||||
|
||||
public void LoescheFahrzeug(Fahrzeug fahrzeug)
|
||||
{
|
||||
_repository.LoescheFahrzeug(fahrzeug.Id);
|
||||
}
|
||||
|
||||
private IEnumerable<Fahrzeug> KonvertiereFahrzeuge(IEnumerable<FahrzeugDTO> fahrzeugs)
|
||||
{
|
||||
return fahrzeugs.Select(fahrzeug => KonvertiereFahrzeuf(fahrzeug));
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
d:DataContext="{d:DesignInstance Type=local:MainWindowViewModel, IsDesignTimeCreatable=False}"
|
||||
Title="{Binding Path=MainWindowTitle}" Height="450" Width="800">
|
||||
<StackPanel>
|
||||
<DataGrid Name="dgTest"
|
||||
<DataGrid x:Name="fahrzeugTabelle"
|
||||
CanUserAddRows="False"
|
||||
CanUserDeleteRows="False"
|
||||
CanUserSortColumns="True"
|
||||
@@ -18,6 +18,13 @@
|
||||
<DataGrid.Columns>
|
||||
<DataGridTextColumn Header="ID" Binding="{Binding Path=Id}"/>
|
||||
<DataGridTextColumn Header="Name" Binding="{Binding Path=Name}"/>
|
||||
<DataGridTemplateColumn>
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Button Command="{Binding ElementName=fahrzeugTabelle, Path=DataContext.LoeschenKommando}" CommandParameter="{Binding}">Löschen</Button>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellTemplate>
|
||||
</DataGridTemplateColumn>
|
||||
</DataGrid.Columns>
|
||||
|
||||
</DataGrid>
|
||||
|
||||
@@ -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<string>(ref _mainWindowTitle, value);
|
||||
} }
|
||||
}
|
||||
}
|
||||
|
||||
public ObservableCollection<Fahrzeug> Fahrzeuge { get; } = new ObservableCollection<Fahrzeug>();
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user