forked from amkovkov/GranuSightSoftware2
44 lines
1.3 KiB
C#
44 lines
1.3 KiB
C#
using Avalonia.Controls;
|
|
|
|
using CommunityToolkit.Mvvm.ComponentModel;
|
|
using CommunityToolkit.Mvvm.Input;
|
|
|
|
using GSS2.UI.Core.Services;
|
|
using GSS2.UI.Core.ViewModels;
|
|
|
|
namespace GSS2.ViewModels;
|
|
|
|
public partial class MainViewModel : ViewModelBase
|
|
{
|
|
private Control? _amineContentAnalysisView = null;
|
|
|
|
private readonly NavigationService _navigationService;
|
|
private readonly DependencyInjectionViewLocator _viewLocator;
|
|
|
|
[ObservableProperty] public partial AmineContentViewModel AmineContentAnalysisViewModel { get; set; }
|
|
|
|
public MainViewModel(
|
|
NavigationService navigationService,
|
|
DependencyInjectionViewLocator viewLocator,
|
|
AmineContentViewModel amineContentAnalysisViewModel
|
|
)
|
|
{
|
|
_navigationService = navigationService;
|
|
_viewLocator = viewLocator;
|
|
|
|
AmineContentAnalysisViewModel = amineContentAnalysisViewModel;
|
|
}
|
|
|
|
[RelayCommand]
|
|
public void NavigateToAmineContentAnalysis()
|
|
{
|
|
if (_amineContentAnalysisView is null)
|
|
_amineContentAnalysisView = _viewLocator.Build(AmineContentAnalysisViewModel);
|
|
if (_amineContentAnalysisView is not null)
|
|
_navigationService.NavigateTo(_amineContentAnalysisView);
|
|
}
|
|
|
|
[RelayCommand] public void NavigateToColorimetricAnalysis() { }
|
|
[RelayCommand] public void NavigateToGranulometricAnalysis() { }
|
|
}
|