关于垂直滚动与鼠标滚轮的错误

时间:2015-08-10 06:56:00

标签: c# wpf scrollviewer mousewheel

我遇到了与鼠标滚轮垂直滚动的问题。

<ListBox x:Class="mynamespace.MyListBox"
         PreviewMouseWheel="listBox_OnPreviewMouseWheel"
         ScrollViewer.ScrollChanged="scrollViewer_OnScrollChanged">
</ListBox>

private void motionListBox_OnPreviewMouseWheel(object sender, MouseWheelEventArgs e)
{
    Console.WriteLine(e.Delta);
}

private void scrollViewer_OnScrollChanged(object sender, ScrollChangedEventArgs e)
{
    if (e.VerticalChange != 0.0)
    {                
        // Do something regarding vertical scroll
    }
}

MouseWheelEventArgs e.Deltanegative时,ScrollChangedEventArgs e.VerticalChangepositive(向下滚动),e.Deltapositive时,e.VerticalChangenegative(向上滚动)。

但是,在我的情况下,这有时相反,即使e.Deltanegativee.VerticalChangenegative,鼠标滚轮方向也不一致垂直滚动方向。

仅当垂直滚动条位于垂直可滚动区域的中间时才会发生这种情况。

有谁能告诉我为什么会发生这种情况以及如何处理它?<​​/ p>

0 个答案:

没有答案