private void Scroll_ValueChanged(object sender, RoutedPropertyChangedEventArgs <double> e) { if (ignoreRightScroll || ignoreLeftScroll) { return; } ignoreLeftScroll = ignoreRightScroll = true; LeftSV.ScrollToVerticalOffset(e.NewValue); RightSV.ScrollToVerticalOffset(e.NewValue); }
private void LV_ScrollChanged(object sender, ScrollChangedEventArgs e) { if (LeftSV == null) { LeftSV = (VisualTreeHelper.GetChild(lvLeft, 0) as Decorator).Child as ScrollViewer; } if (RightSV == null) { RightSV = (VisualTreeHelper.GetChild(lvRight, 0) as Decorator).Child as ScrollViewer; } if (sender == lvLeft) { if (ignoreLeftScroll) { ignoreLeftScroll = false; } else { ignoreRightScroll = true; RightSV.ScrollToVerticalOffset(e.VerticalOffset); sbScroll.Maximum = e.ExtentHeight - e.ViewportHeight; sbScroll.Value = e.VerticalOffset; } } else if (sender == lvRight) { if (ignoreRightScroll) { ignoreRightScroll = false; } else { ignoreLeftScroll = true; LeftSV.ScrollToVerticalOffset(e.VerticalOffset); sbScroll.Maximum = e.ExtentHeight - e.ViewportHeight; sbScroll.Value = e.VerticalOffset; } } }
private void Scroll_Scrolled(object sender, System.Windows.Controls.Primitives.ScrollEventArgs e) { ignoreLeftScroll = ignoreRightScroll = true; LeftSV.ScrollToVerticalOffset(e.NewValue); RightSV.ScrollToVerticalOffset(e.NewValue); }