Files
modernkeepass/ModernKeePass/Views/MainPage.xaml.cs

63 lines
1.8 KiB
C#
Raw Permalink Normal View History

using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Navigation;
using ModernKeePass.Domain.Dtos;
using ModernKeePass.ViewModels;
using ModernKeePass.ViewModels.ListItems;
// The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=234238
2017-09-10 13:49:11 -04:00
namespace ModernKeePass.Views
2017-09-10 13:49:11 -04:00
{
/// <summary>
/// An empty page that can be used on its own or navigated to within a Frame.
2017-09-10 13:49:11 -04:00
/// </summary>
2017-10-12 17:45:37 +02:00
public sealed partial class MainPage
2017-09-10 13:49:11 -04:00
{
public new MainVm Model => (MainVm) DataContext;
2017-09-10 13:49:11 -04:00
public MainPage()
{
2017-09-26 18:18:00 +02:00
InitializeComponent();
ListView = MenuListView;
ListViewSource = MenuItemsSource;
}
2017-12-02 08:42:10 -05:00
private new void ListView_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
2017-12-02 08:42:10 -05:00
base.ListView_SelectionChanged(sender, e);
var selectedItem = Model.SelectedItem as MainMenuItemVm;
if (selectedItem == null)
{
MenuFrame.Navigate(typeof(WelcomePage));
}
else
{
selectedItem.Destination.Navigate(selectedItem.PageType, selectedItem.Parameter);
}
}
2020-04-25 22:03:47 +02:00
protected override async void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
FileInfo file;
if (e.NavigationMode == NavigationMode.Back)
{
file = null;
}
else
{
file = e.Parameter as FileInfo;
}
2020-04-25 22:03:47 +02:00
await Model.Initialize(Frame, MenuFrame, file);
2017-09-11 18:25:00 +02:00
}
protected override void OnNavigatedFrom(NavigationEventArgs e)
{
base.OnNavigatedFrom(e);
2021-06-15 15:33:15 +02:00
Model.Cleanup();
}
2017-09-10 13:49:11 -04:00
}
}