private void PopulateGenreTree() { GenreTreeController.ClearMultiSelection(); GenreTree.Clear(); foreach (string genre in m_DataModel.Database.Genres) { GenreTreeViewNode genreNode = new GenreTreeViewNode(genre, null, GenreTreeController); foreach (AlbumMetadata album in m_DataModel.Database.AlbumsByGenre(genre)) { AlbumMetadataTreeViewNode albumNode = new AlbumMetadataTreeViewNode(album, genreNode, GenreTreeController); genreNode.AddChild(albumNode); foreach (SongMetadata song in m_DataModel.Database.SongsByAlbum(album)) { if (song.Genre == genre) { SongMetadataTreeViewNode songNode = new SongMetadataTreeViewNode("", song, albumNode, GenreTreeController); albumNode.AddChild(songNode); } } } GenreTree.Add(genreNode); } int id = 0; foreach (TreeViewNode baseNode in GenreTree) { id = AssignTreeViewNodeIDs(baseNode, id); } }
private void PopulateGenreTree() { GenreTreeController.Clear(); GenreTree.Clear(); foreach (Genre genre in m_DataModel.Database.Genres.Values) { HierarchicalLibraryItem genreNode = new HierarchicalLibraryItem(genre, GenreTreeController); GenreTree.Add(genreNode); foreach (LibraryItem album in m_DataModel.Database.Expand(genre)) { HierarchicalLibraryItem albumNode = new HierarchicalLibraryItem(album, genreNode); foreach (LibraryItem song in m_DataModel.Database.Expand(album)) { new HierarchicalLibraryItem(song, albumNode); } } } GenreTreeController.ResetNodeIds(); }