diff --git a/StabilityMatrix/LaunchPage.xaml b/StabilityMatrix/LaunchPage.xaml
new file mode 100644
index 00000000..c4744f77
--- /dev/null
+++ b/StabilityMatrix/LaunchPage.xaml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
diff --git a/StabilityMatrix/LaunchPage.xaml.cs b/StabilityMatrix/LaunchPage.xaml.cs
new file mode 100644
index 00000000..763704fd
--- /dev/null
+++ b/StabilityMatrix/LaunchPage.xaml.cs
@@ -0,0 +1,36 @@
+using Microsoft.UI.Xaml;
+using Microsoft.UI.Xaml.Controls;
+using Microsoft.UI.Xaml.Controls.Primitives;
+using Microsoft.UI.Xaml.Data;
+using Microsoft.UI.Xaml.Input;
+using Microsoft.UI.Xaml.Media;
+using Microsoft.UI.Xaml.Navigation;
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Runtime.InteropServices.WindowsRuntime;
+using Windows.Foundation;
+using Windows.Foundation.Collections;
+
+// To learn more about WinUI, the WinUI project structure,
+// and more about our project templates, see: http://aka.ms/winui-project-info.
+
+namespace StabilityMatrix
+{
+ ///
+ /// An empty page that can be used on its own or navigated to within a Frame.
+ ///
+ public sealed partial class LaunchPage : Page
+ {
+ public LaunchPage()
+ {
+ this.InitializeComponent();
+ }
+
+ private void LaunchButton_OnClick(object sender, RoutedEventArgs e)
+ {
+ throw new NotImplementedException();
+ }
+ }
+}
diff --git a/StabilityMatrix/MainWindow.xaml b/StabilityMatrix/MainWindow.xaml
index 0d68149f..39ce9e5d 100644
--- a/StabilityMatrix/MainWindow.xaml
+++ b/StabilityMatrix/MainWindow.xaml
@@ -6,14 +6,18 @@
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d">
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/StabilityMatrix/MainWindow.xaml.cs b/StabilityMatrix/MainWindow.xaml.cs
index 02116cb9..d7cae787 100644
--- a/StabilityMatrix/MainWindow.xaml.cs
+++ b/StabilityMatrix/MainWindow.xaml.cs
@@ -12,6 +12,7 @@ using System.Linq;
using System.Runtime.InteropServices.WindowsRuntime;
using Windows.Foundation;
using Windows.Foundation.Collections;
+using WinRT.Interop;
namespace StabilityMatrix
{
@@ -26,9 +27,46 @@ namespace StabilityMatrix
}
- private void ButtonNavigate_OnClick(object sender, RoutedEventArgs e)
+ private void ButtonNavInstallPage_OnClick(object sender, RoutedEventArgs e)
{
ContentFrame.Navigate(typeof(InstallPage));
}
+
+ private void ButtonNavLaunchPage_OnClick(object sender, RoutedEventArgs e)
+ {
+ ContentFrame.Navigate(typeof(LaunchPage));
+ }
+
+ private void MainNavigationView_OnLoaded(object sender, RoutedEventArgs e)
+ {
+ var home = MainNavigationView.MenuItems.OfType().First();
+ SetCurrentNavigationViewItem(home);
+ }
+
+ private void MainNavigationView_OnSelectionChanged(NavigationView sender, NavigationViewSelectionChangedEventArgs args)
+ {
+ SetCurrentNavigationViewItem(args.SelectedItemContainer as NavigationViewItem);
+ }
+
+ private void SetCurrentNavigationViewItem(NavigationViewItem item)
+ {
+ if (item == null || item.Tag == null) return;
+
+ var tag = item.Tag.ToString();
+ switch (tag)
+ {
+ case "InstallPage":
+ ContentFrame.Navigate(typeof(InstallPage));
+ break;
+ case "LaunchPage":
+ ContentFrame.Navigate(typeof(LaunchPage));
+ break;
+ default:
+ throw new ArgumentException($"Invalid tag: {tag}");
+ }
+
+ MainNavigationView.Header = item.Content;
+ MainNavigationView.SelectedItem = item;
+ }
}
}
\ No newline at end of file
diff --git a/StabilityMatrix/StabilityMatrix.csproj b/StabilityMatrix/StabilityMatrix.csproj
index 142fdda9..f408c7cf 100644
--- a/StabilityMatrix/StabilityMatrix.csproj
+++ b/StabilityMatrix/StabilityMatrix.csproj
@@ -13,6 +13,7 @@
+
@@ -39,6 +40,11 @@
+
+
+ MSBuild:Compile
+
+
MSBuild:Compile