using System.Collections.ObjectModel; using System.Linq; using ModernKeePassLib; namespace ModernKeePass.ViewModels { public class GroupVm { public ObservableCollection Entries { get; set; } public ObservableCollection 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(group.Entries.Select(e => new EntryVm(e))); Groups = new ObservableCollection(group.Groups.Select(g => new GroupVm(g))); } } }