Navigation zwischen views Funktioniert
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.EntityFramework;
|
||||
using DaSaSo.EntityFramework.Services;
|
||||
using DaSaSo.ViewModel.Commands;
|
||||
using DaSaSo.ViewModel.Enums;
|
||||
using DaSaSo.ViewModel.Interface;
|
||||
using DaSaSo.ViewModel.State.Navigation;
|
||||
@@ -17,87 +18,78 @@ namespace DaSaSo.ViewModel
|
||||
{
|
||||
public sealed class MainWindowViewModel : BaseViewModel
|
||||
{
|
||||
|
||||
private Client _selectedClient;
|
||||
private Project _selectedProject;
|
||||
private Buildingsite _selectedBuildingsite;
|
||||
private readonly IViewModelAbstractFactory viewModelFactory;
|
||||
private readonly IActualProject _actualProject;
|
||||
private string _clientname = "";
|
||||
private string _projektname = "";
|
||||
private string _buildingsitename = "";
|
||||
|
||||
public INavigator Navigator { get; set; }
|
||||
public ICommand UpdateCurrentViewModelCommand { get; }
|
||||
|
||||
public Project SelectedProject
|
||||
public string ClientName
|
||||
{
|
||||
get => _selectedProject;
|
||||
get => _clientname;
|
||||
set
|
||||
{
|
||||
if(_selectedProject != value)
|
||||
if(_clientname != value)
|
||||
{
|
||||
_selectedProject = value;
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
public Buildingsite SelectedBuildingsite
|
||||
{
|
||||
get => _selectedBuildingsite;
|
||||
set
|
||||
{
|
||||
if(_selectedBuildingsite != value)
|
||||
{
|
||||
_selectedBuildingsite = value;
|
||||
_clientname = value;
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public Client SelectedClient
|
||||
public string Projektname
|
||||
{
|
||||
get => _selectedClient;
|
||||
get => _projektname;
|
||||
set
|
||||
{
|
||||
if(_selectedClient != value)
|
||||
if (_projektname != value)
|
||||
{
|
||||
_selectedClient = value;
|
||||
//SelectedProject = null;
|
||||
_projektname = value;
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
public MainWindowViewModel(INavigator navigator)
|
||||
public string Buildingsitename
|
||||
{
|
||||
get => _buildingsitename;
|
||||
set
|
||||
{
|
||||
if (_buildingsitename != value)
|
||||
{
|
||||
_buildingsitename = value;
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public MainWindowViewModel(INavigator navigator,IViewModelAbstractFactory viewModelFactory, IActualProject actualProject)
|
||||
{
|
||||
this.Navigator = navigator;
|
||||
Navigator.UpdateViewModelCommand.Execute(EViewType.Home);
|
||||
|
||||
|
||||
Mediator.Subscribe(Enums.EMediator.SELECTEDCLIENT, (tt) =>
|
||||
{
|
||||
SelectedClient = (Client)tt;
|
||||
listProjecte();
|
||||
});
|
||||
|
||||
Mediator.Subscribe(Enums.EMediator.EDITCLIENT, (tt) =>
|
||||
{
|
||||
|
||||
});
|
||||
Mediator.Subscribe(Enums.EMediator.SHOWCLIENT, (tt) => {
|
||||
|
||||
});
|
||||
this.viewModelFactory = viewModelFactory;
|
||||
UpdateCurrentViewModelCommand = new UpdateCurrentViewModelCommand(navigator, viewModelFactory);
|
||||
UpdateCurrentViewModelCommand.Execute(EViewType.Home);
|
||||
_actualProject = actualProject;
|
||||
_actualProject.ClientChanged += _actualProject_ClientChanged;
|
||||
_actualProject.ProjectChanged += _actualProject_ProjectChanged;
|
||||
_actualProject.BuildingSiteChanged += _actualProject_BuildingSiteChanged;
|
||||
}
|
||||
|
||||
|
||||
|
||||
private void listSewerObjects()
|
||||
private void _actualProject_BuildingSiteChanged(object? sender, EventArgs e)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
Buildingsitename = _actualProject.AktuellBaustelle.BuildingSiteNumber;
|
||||
}
|
||||
|
||||
private void listBuildingsite()
|
||||
private void _actualProject_ProjectChanged(object? sender, EventArgs e)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
Projektname = _actualProject.AktuellProjekt.Name;
|
||||
}
|
||||
|
||||
private void listProjecte()
|
||||
private void _actualProject_ClientChanged(object? sender, EventArgs e)
|
||||
{
|
||||
|
||||
ClientName = _actualProject.AktuellClient.Firstname;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user