diff --git a/Apollon.WPF/App.xaml b/Apollon.WPF/App.xaml
index d4263ba..88905b4 100644
--- a/Apollon.WPF/App.xaml
+++ b/Apollon.WPF/App.xaml
@@ -7,6 +7,7 @@
+
diff --git a/Apollon.WPF/App.xaml.cs b/Apollon.WPF/App.xaml.cs
index e2b5ffa..8bc3dff 100644
--- a/Apollon.WPF/App.xaml.cs
+++ b/Apollon.WPF/App.xaml.cs
@@ -22,6 +22,7 @@ namespace Apollon.WPF
///
public partial class App : Application
{
+ private readonly NavigationStore _navigationStore;
private readonly ModalNavigationStore _modalNavigationStore;
private readonly TournamentsDbContextFactory _tournamentsDbContextFactory;
private readonly IGetAllTournamentsQuery _getAllTournamentQuery;
@@ -36,6 +37,7 @@ namespace Apollon.WPF
{
string connectionString = "Server=NATHALIE-PC\\NATLINUXDB;Database=Apollon;Trusted_Connection=True;MultipleActiveResultSets=true";
+ _navigationStore = new NavigationStore();
_modalNavigationStore = new ModalNavigationStore();
_tournamentsDbContextFactory = new TournamentsDbContextFactory(
new DbContextOptionsBuilder().UseSqlServer(connectionString).Options);
@@ -52,15 +54,22 @@ namespace Apollon.WPF
{
context.Database.Migrate();
}
-
+
OverviewViewModel overviewViewModel = new OverviewViewModel(
_tournamentStore,
_selectedTournamentStore,
- _modalNavigationStore);
+ _modalNavigationStore,
+ _navigationStore);
+
+ _navigationStore.CurrentViewModel = new OverviewViewModel(
+ _tournamentStore,
+ _selectedTournamentStore,
+ _modalNavigationStore,
+ _navigationStore);
MainWindow = new MainWindow()
{
- DataContext = new MainViewModel(_modalNavigationStore, overviewViewModel)
+ DataContext = new MainViewModel(_modalNavigationStore, overviewViewModel,_navigationStore)
};
MainWindow.Show();
diff --git a/Apollon.WPF/Commands/NavigatCommand.cs b/Apollon.WPF/Commands/NavigatCommand.cs
new file mode 100644
index 0000000..d2a16b4
--- /dev/null
+++ b/Apollon.WPF/Commands/NavigatCommand.cs
@@ -0,0 +1,29 @@
+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 NavigatCommand : CommandBase
+ where TViewModel : ViewModelBase
+ {
+ private readonly NavigationStore _navigationStore;
+ private readonly Func _createViewModel;
+
+ public NavigatCommand(NavigationStore navigationStore, Func createViewModel)
+ {
+ _navigationStore = navigationStore;
+ _createViewModel = createViewModel;
+ }
+
+ public override void Execute(object parameter)
+ {
+
+ _navigationStore.CurrentViewModel = _createViewModel();
+ }
+ }
+}
diff --git a/Apollon.WPF/MainWindow.xaml b/Apollon.WPF/MainWindow.xaml
index e0fdb7e..fca424f 100644
--- a/Apollon.WPF/MainWindow.xaml
+++ b/Apollon.WPF/MainWindow.xaml
@@ -15,7 +15,8 @@
Background="Transparent"
AllowsTransparency="True"
WindowStyle="None"
- ResizeMode="NoResize">
+ ResizeMode="NoResize"
+ MouseDown="Window_MouseDown">
@@ -26,6 +27,12 @@
+
+
+
+
+
+
@@ -37,12 +44,21 @@
-
-
+
+
-
+
+
+
+
+
+
+
+
+
+
+