ScrollViewer本身的垂直偏移量与ScrollChangedEventArgs的垂直偏移量有什么区别?

本文关键字:垂直 偏移量 什么 区别 ScrollChangedEventArgs ScrollViewer | 更新日期: 2023-09-27 18:17:03

我为ScrollViewer设置了一个ScrollChangedEventHandler,如下面的代码所示。

private void scrollViewer_ScrollChanged(object sender, ScrollChangedEventArgs e)
{
    var scrollViewer = sender as ScrollViewer;
    if (scrollViewer == null) 
        return; 
    Console.WriteLine(scrollViewer.VerticalOffset); 
    Console.WriteLine(e.VerticalOffset);
}

有时,2个垂直偏移会产生不同的值。你能告诉我ScrollViewer本身的垂直偏移量和ScrollChangedEventArgs的垂直偏移量之间的实际区别是什么吗?

ScrollViewer本身的垂直偏移量与ScrollChangedEventArgs的垂直偏移量有什么区别?

MSDN文档中关于这两个属性的结论:

滚动视图。垂直偏移
(在滚动之前,意味着在
事件被触发之前的垂直偏移)

e。VerticalOffset:表示ScrollViewer的垂直偏移量的新更新值
(在您执行滚动之后,表示事件触发后的垂直偏移量的值)

对于一般用途,您将使用e.VerticalOffset属性。

注意:同样适用于HorizontalOffset属性

这里是资源1和资源2