private void MainScrollViewerViewChanged(object sender, ScrollViewerViewChangedEventArgs e) { var v = (ScrollViewer)sender; // When we are at the bottom if (v.ScrollableHeight < 0 || (int)v.VerticalOffset == (int)v.ScrollableHeight) { switch (ViewModel.SelectedPivotItem.Name) { case "TracksPivot": TracksView.GetScrollViewer().VerticalScrollBarVisibility = ScrollBarVisibility.Hidden; break; case "LikesPivot": LikesView.GetScrollViewer().VerticalScrollBarVisibility = ScrollBarVisibility.Hidden; break; case "PlaylistsPivot": PlaylistsView.GetScrollViewer().VerticalScrollBarVisibility = ScrollBarVisibility.Hidden; break; case "FollowersPivot": FollowersView.GetScrollViewer().VerticalScrollBarVisibility = ScrollBarVisibility.Hidden; break; case "FollowingsPivot": FollowingsView.GetScrollViewer().VerticalScrollBarVisibility = ScrollBarVisibility.Hidden; break; } } }
public TrackViewModel() { _trackCollectionView.Source = MediaPropertiesLibrary.Audio.Library.Library.Songs; TracksView.Filter += (item) => ((MediaPropertiesLibrary.Audio.Track)item).Name.ToLower().Contains(SearchText.ToLower()); TracksView.CustomSort = this; TracksView.Refresh(); OnPropertyChanged(nameof(TracksView)); PlayAudioTrack = track => Dispatch("Multiple Track Selected For Play", TracksView.Cast <TrackDefinition>(), TracksView.Cast <TrackDefinition>().ToList().FindIndex(o => o == track)); OrderByTime = new UiCommand(o => OrderByAffectation(OrderBy.Time)); OrderByArtist = new UiCommand(o => OrderByAffectation(OrderBy.Artist)); OrderByAlbum = new UiCommand(o => OrderByAffectation(OrderBy.Album)); OrderByTrack = new UiCommand(o => OrderByAffectation(OrderBy.Track)); }
public void Init(TrackCollection tracks) { TracksView tv = new TracksView(tracks); Extender.BuildGridForView(grd, tv, false); }
private void OrderByAffectation(OrderBy order) { _orderInversion = _orderBy == order ? !_orderInversion : _orderInversion; _orderBy = order; TracksView?.Refresh(); }