mirror of
https://github.com/wismna/ModernKeePass.git
synced 2025-10-03 15:40:18 -04:00
Corrected then broke again data binding...
Lib now uses more nuget packages
This commit is contained in:
@@ -15,7 +15,7 @@ namespace ModernKeePass.ViewModels
|
||||
private PwDatabase _database = new PwDatabase();
|
||||
|
||||
public string Name { get; set; }
|
||||
public ObservableCollection<GroupVm> Groups { get; set; }
|
||||
public GroupVm RootGroup { get; set; }
|
||||
|
||||
public async void Open(StorageFile databaseFile, string password)
|
||||
{
|
||||
@@ -26,7 +26,7 @@ namespace ModernKeePass.ViewModels
|
||||
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 }));
|
||||
RootGroup = new GroupVm (_database.RootGroup);
|
||||
}
|
||||
finally
|
||||
{
|
||||
|
@@ -3,10 +3,23 @@ using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using ModernKeePassLib;
|
||||
|
||||
namespace ModernKeePass.ViewModels
|
||||
{
|
||||
public class EntryVm
|
||||
{
|
||||
public string Title { get; private set; }
|
||||
public string UserName { get; private set; }
|
||||
public string URL { get; private set; }
|
||||
public string Notes { get; private set; }
|
||||
|
||||
public EntryVm(PwEntry entry)
|
||||
{
|
||||
Title = entry.Strings.GetSafe(PwDefs.TitleField).ReadString();
|
||||
UserName = entry.Strings.GetSafe(PwDefs.UserNameField).ReadString();
|
||||
URL = entry.Strings.GetSafe(PwDefs.UrlField).ReadString();
|
||||
Notes = entry.Strings.GetSafe(PwDefs.NotesField).ReadString();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -1,14 +1,27 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using ModernKeePassLib;
|
||||
|
||||
namespace ModernKeePass.ViewModels
|
||||
{
|
||||
public class GroupVm
|
||||
{
|
||||
public List<EntryVm> Entries { get; set; }
|
||||
public ObservableCollection<EntryVm> Entries { get; set; }
|
||||
public ObservableCollection<GroupVm> Groups { get; set; }
|
||||
public string Name { get; set; }
|
||||
|
||||
public string EntryCount {
|
||||
get
|
||||
{
|
||||
return $"{Entries?.Count} entries.";
|
||||
}
|
||||
}
|
||||
|
||||
public GroupVm(PwGroup group)
|
||||
{
|
||||
Name = group.Name;
|
||||
Entries = new ObservableCollection<EntryVm>(group.Entries.Select(e => new EntryVm(e)));
|
||||
Groups = new ObservableCollection<GroupVm>(group.Groups.Select(g => new GroupVm(g)));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user