private void CustomVirtualizingStackPanel_MouseWheelDownEvent(object sender, RoutedEventArgs e) { CustomVirtualizingStackPanel panel = sender as CustomVirtualizingStackPanel; if (panel != null) { ScrollViewer scrollViewer = GetParent <ScrollViewer>(panel); if (scrollViewer != null) { double dVer = scrollViewer.VerticalOffset; double dViewport = scrollViewer.ViewportHeight; double dExtent = scrollViewer.ExtentHeight; //滚动至最底部 if (dVer + dViewport >= dExtent) { ResultPage page = scrollViewer.Tag as ResultPage; if (page != null) { page.Start(); } } } } }
private void PaginationVirtualizingWrapPanel_PageIndexChanged(object sender, RoutedEventArgs e) { PaginationVirtualizingWrapPanel panel = sender as PaginationVirtualizingWrapPanel; if (panel != null && panel.PageIndex + 1 == panel.PageCount) { ItemsControl itemsControl = GetParent <ItemsControl>(panel); if (itemsControl != null) { ResultPage page = itemsControl.Tag as ResultPage; if (page != null) { page.Start(); } } } }
public void Search(SearchSuggestionItem history) { if (!this.SearchHistorys.Contains(history)) { this.Search(history.Text); return; } history.Order = this.SearchHistorys.Max(_p => _p.Order) + 1; ResultPage newpage = new ResultPage(1, history.Text, this.NewWebCrawlers()); ViewHelper.ShowPage(newpage); newpage.Start(); this.SearchPageVisibility = Visibility.Hidden; this.MainPageVisibility = Visibility.Visible; Task.Factory.StartNew(this.SaveHostory); }