using Apollon.WPF.Stores; using Apollon.WPF.ViewModels; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Apollon.WPF.Commands { public class NavigateCommand : CommandBase where TViewModel : ViewModelBase { private readonly NavigationStore _navigationStore; private readonly Func _createViewModel; public NavigateCommand(NavigationStore navigationStore, Func createViewModel) { _navigationStore = navigationStore; _createViewModel = createViewModel; } public override void Execute(object parameter) { _navigationStore.CurrentViewModel = _createViewModel(); } } }