private void Setup() { var storedGroups = _settingsProvider.ReadBytes("StoredGroups"); ProjectGroup[] groups = null; if (storedGroups != null && storedGroups.Length > 0) { try { groups = ProjectGroup.Deserialize(storedGroups); // ensure a observablecollection behind the scenes foreach (var group in groups) { group.Projects = new ObservableCollection <Project>(group.Projects); } } catch (Exception e) { Debug.WriteLine("Loading Start Page settings failed {0}", e); throw; } } Groups = new ObservableCollection <ProjectGroup>(groups ?? new ProjectGroup[0]); GroupColumns = _settingsProvider.ReadInt32("GroupColumns", 1); ProjectColumns = _settingsProvider.ReadInt32("ProjectColumns"); }
public bool Setup(ISettingsProvider settingsProvider) { _settingsProvider = settingsProvider; var successful = true; var storedGroups = settingsProvider.ReadBytes("StoredGroups"); ProjectGroup[] groups = null; if (storedGroups != null && storedGroups.Length > 0) { try { groups = ProjectGroup.Deserialize(storedGroups); // ensure a observablecollection behind the scenes foreach (var group in groups) { group.Projects = new ObservableCollection <Project>(group.Projects); } } catch (Exception e) { successful = false; Debug.WriteLine("Loading Start Page settings failed {0}", e); } } Groups = new ObservableCollection <ProjectGroup>(groups ?? new ProjectGroup[0]); GroupColumns = settingsProvider.ReadInt32("GroupColumns", 1); return(successful); }