viewmodel ins wpf gepackt, build failed
This commit is contained in:
44
DaSaSo.Wpf/ViewModel/Commands/EditBuildingsiteCommand.cs
Normal file
44
DaSaSo.Wpf/ViewModel/Commands/EditBuildingsiteCommand.cs
Normal file
@@ -0,0 +1,44 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.Domain.Services;
|
||||
using DaSaSo.Domain.Services.BuildingsiteServices;
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System.ComponentModel;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
public class EditBuildingsiteCommand : AsyncCommandBase
|
||||
{
|
||||
private IDataService<Buildingsite> buildingSiteDataService;
|
||||
private IActualProject actualProject;
|
||||
private IRenavigator renavigator;
|
||||
private IBuildingsiteService buildingsiteService;
|
||||
private BuildingsiteListViewModel _buildingsiteListViewModel;
|
||||
public override bool CanExecute(object? parameter)
|
||||
{
|
||||
return _buildingsiteListViewModel.CanSelectBuildingsite;
|
||||
}
|
||||
|
||||
public EditBuildingsiteCommand(IDataService<Buildingsite> buildingSiteDataService, IActualProject actualProject, IRenavigator renavigator, IBuildingsiteService buildingsiteService, BuildingsiteListViewModel buildingsiteListViewModel)
|
||||
{
|
||||
this.buildingSiteDataService = buildingSiteDataService;
|
||||
this.actualProject = actualProject;
|
||||
this.renavigator = renavigator;
|
||||
this.buildingsiteService = buildingsiteService;
|
||||
_buildingsiteListViewModel = buildingsiteListViewModel;
|
||||
_buildingsiteListViewModel.PropertyChanged += BuildingsiteListViewModel_PropertyChanged;
|
||||
}
|
||||
|
||||
private void BuildingsiteListViewModel_PropertyChanged(object? sender, PropertyChangedEventArgs e)
|
||||
{
|
||||
if (e.PropertyName == nameof(_buildingsiteListViewModel.CanSelectBuildingsite))
|
||||
OnCanExecuteChanged();
|
||||
}
|
||||
|
||||
public override async Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
actualProject.SetBuildingSite(_buildingsiteListViewModel.SelectedBuildingsite);
|
||||
renavigator.Renavigate();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user