WIP on data binding, nothing is working...

This commit is contained in:
2017-09-12 18:20:32 +02:00
parent 4487f0343f
commit 1cd7c0411c
33 changed files with 1397 additions and 1373 deletions

View File

@@ -0,0 +1,37 @@
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using Windows.Storage;
using ModernKeePassLib;
using ModernKeePassLib.Keys;
using ModernKeePassLib.Serialization;
using ModernKeePassLib.Interfaces;
namespace ModernKeePass.ViewModels
{
public class DatabaseVm
{
private PwDatabase _database = new PwDatabase();
public string Name { get; set; }
public ObservableCollection<GroupVm> Groups { get; set; }
public async void Open(StorageFile databaseFile, string password)
{
var key = new CompositeKey();
key.AddUserKey(new KcpPassword(password));
try
{
await _database.Open(IOConnectionInfo.FromFile(databaseFile), key, new NullStatusLogger());
if (!_database.IsOpen) return;
Name = databaseFile.DisplayName;
Groups = new ObservableCollection<GroupVm>(_database.RootGroup.Groups.Select(g => new GroupVm { Name = g.Name }));
}
finally
{
_database.Close();
}
}
}
}

View File

@@ -0,0 +1,12 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ModernKeePass.ViewModels
{
public class EntryVm
{
}
}

View File

@@ -0,0 +1,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ModernKeePass.ViewModels
{
public class GroupVm
{
public List<EntryVm> Entries { get; set; }
public string Name { get; set; }
}
}