Add currently opened database to main menu

Save and close reloads the page
Design enhancements
Some refactoring
This commit is contained in:
2017-09-28 17:51:30 +02:00
committed by BONNEVILLE Geoffroy
parent caaf34918e
commit 1582060466
6 changed files with 74 additions and 31 deletions

View File

@@ -12,21 +12,22 @@ namespace ModernKeePass.Pages
/// </summary>
public sealed partial class SaveDatabasePage : Page
{
private Frame _mainFrame;
public SaveDatabasePage()
{
this.InitializeComponent();
InitializeComponent();
DataContext = new DatabaseVm();
}
protected override void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
_mainFrame = e.Parameter as Frame;
var app = (App)Application.Current;
if (app.Database == null) return;
var databaseVm = DataContext as DatabaseVm;
if (databaseVm == null) return;
databaseVm.IsOpen = app.Database.IsOpen;
databaseVm.NotifyPropertyChanged("IsOpen");
UpdateDatabaseStatus(app, databaseVm);
}
private void SaveButton_OnClick(object sender, RoutedEventArgs e)
@@ -34,6 +35,14 @@ namespace ModernKeePass.Pages
var app = (App) Application.Current;
app.Database.Save();
app.Database.Close();
UpdateDatabaseStatus(app, DataContext as DatabaseVm);
_mainFrame.Navigate(typeof(MainPage));
}
private void UpdateDatabaseStatus(App app, DatabaseVm databaseVm)
{
databaseVm.IsOpen = app.Database.IsOpen;
databaseVm.NotifyPropertyChanged("IsOpen");
}
}
}