private void Reader_ChapterChanged(object sender, Chapter e) { string title = e.Title; ChapterTitleBlock.Text = title; ChapterListView.SelectedItem = e; ChapterListView.ScrollIntoView(e, ScrollIntoViewAlignment.Leading); }
private void SyncIndexCascadeViewSelection() { if (ViewModel.VolumeNo < 0 || ViewModel.ChapterNo < 0 || ViewModel.Index.Count <= ViewModel.VolumeNo || ViewModel.Index[ViewModel.VolumeNo].Count <= ViewModel.ChapterNo) { return; } var target = ViewModel.Index[ViewModel.VolumeNo]; var chpTarget = target[ViewModel.ChapterNo]; if (ViewModel.HasNext) { var nextvm = ViewModel.Index[ViewModel.VolumeNo][ViewModel.ChapterNo + 1]; nextvm.NotifyPropertyChanged("IsDownloaded"); } if (VolumeListView.ActualHeight > 0 && VolumeListView.Items.Count > 0) { VolumeListView.SelectedItem = target; VolumeListView.UpdateLayout(); VolumeListView.ScrollIntoView(target, ScrollIntoViewAlignment.Leading); } else { if (VolumeListView.GetValue(ListViewBaseScrollToItemRequestProperty) == null) { VolumeListView.SetValue(ListViewBaseScrollToItemRequestProperty, target); VolumeListView.SizeChanged += ListView_SizeChanged_ScrollToItem; } else { VolumeListView.SetValue(ListViewBaseScrollToItemRequestProperty, target); } } if (ChapterListView.ActualHeight > 0 && ChapterListView.Items.Count > 0) { ChapterListView.SelectedItem = chpTarget; ChapterListView.UpdateLayout(); ChapterListView.ScrollIntoView(chpTarget, ScrollIntoViewAlignment.Leading); } else { if (ChapterListView.GetValue(ListViewBaseScrollToItemRequestProperty) == null) { ChapterListView.SetValue(ListViewBaseScrollToItemRequestProperty, chpTarget); ChapterListView.SizeChanged += ListView_SizeChanged_ScrollToItem; } else { ChapterListView.SetValue(ListViewBaseScrollToItemRequestProperty, chpTarget); } } }
private void SyncIndexSelection() { if (!ViewModel.IsLoading) { if (VolumeListView.SelectedIndex != ViewModel.VolumeNo) { VolumeListView.SelectedIndex = ViewModel.VolumeNo; } if (ChapterListView.SelectedIndex != ViewModel.ChapterNo) { ChapterListView.SelectedIndex = ViewModel.ChapterNo; } VolumeListView.ScrollIntoView(VolumeListView.SelectedItem, ScrollIntoViewAlignment.Leading); ChapterListView.ScrollIntoView(ChapterListView.SelectedItem, ScrollIntoViewAlignment.Leading); } }