Add pages and some infrastructure

This commit is contained in:
Anton Volkov
2019-03-26 18:22:29 +03:00
parent 29c44e6027
commit 777bfa1358
32 changed files with 2015 additions and 0 deletions
@@ -0,0 +1,38 @@
using JiraTimeBot.Ui.ViewModels;
namespace JiraTimeBot.Ui
{
public interface IRegisteredViewModels
{
MainViewModel Main { get; set; }
SettingsViewModel Settings { get; set; }
}
public class ApplicationNavigator : IApplicationNavigator
{
private readonly MainWindow _mainWindow;
private readonly IRegisteredPages _pages;
private readonly IRegisteredViewModels _viewModels;
public ApplicationNavigator(MainWindow mainWindow,
IRegisteredPages pages,
IRegisteredViewModels viewModels)
{
_mainWindow = mainWindow;
_pages = pages;
_viewModels = viewModels;
}
public void NavigateToMain()
{
_pages.Main.DataContext = _viewModels.Main;
_mainWindow.Navigate(_pages.Main);
}
public void NavigateToSettings()
{
_pages.Settings.DataContext = _viewModels.Settings;
_mainWindow.Navigate(_pages.Settings);
}
}
}