Files
2026-04-13 09:29:03 +03:00

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() { }
}