WPF:从Scrollviewer在滚动条上获取一个事件

我想只有当用户向左或向右拖动滚动条时才能获得事件。

当我使用MouseClick事件时,它也包含整个canvas……

我发现有一个事件处理程序“ScrollChanged”,但这并不是我想要的,因为我的canvas宽度每秒增长10次,每秒造成10次ScrollChanged事件。

我想通过用鼠标拖动滚动条来获取事件

    

从我理解你的方式来看,只要用户向左或向右拖动滚动条,你就会尝试访问ScrollViewer 。 为此,请使用ScrollViewerScrollChanged事件。 在事件处理程序中,您将拥有sendere参数。 要访问ScrollViewer属性,只需将sender ScrollViewerScrollViewer如下所示:

 ScrollViewer currentViewer = (ScrollViewer)sender; 

这应该允许您访问有关ScrollViewer所有信息。

如果您遇到Canvas的宽度触发ScrollChanged事件的问题,则检查事件处理程序以查看事件是来自鼠标还是来自Canvas宽度更改。