private void ReorganizeGroups(WGGrouping <char, Artist> element) { var oldArtists = TrackedArtists.Where(e => e.Key == element.Key).SelectMany(g => g.ToList()).ToList(); oldArtists.AddRange(element.ToList()); var group = TrackedArtists.Single( e => e.Key == element.Key); var groupindex = TrackedArtists.IndexOf(group); group.Group = oldArtists .GroupBy(a => a.DisplayName.ToLower().First()) .Select(groups => new WGGrouping <char, Artist>(groups)).Single(); ExecuteOnDispatcher(() => TrackedArtists[groupindex] = group); }
private void ReorganizeGroups(WGGrouping<char,Artist> element ) { var oldArtists = TrackedArtists.Where(e => e.Key == element.Key).SelectMany(g => g.ToList()).ToList(); oldArtists.AddRange(element.ToList()); var group = TrackedArtists.Single( e => e.Key == element.Key); var groupindex = TrackedArtists.IndexOf(group); group.Group = oldArtists .GroupBy(a => a.DisplayName.ToLower().First()) .Select(groups => new WGGrouping<char, Artist>(groups)).Single(); ExecuteOnDispatcher(() => TrackedArtists[groupindex] = group); }