无论鼠标位置如何,都可以滚动WPF滚动查看器

时间:2013-01-21 15:10:32

标签: c# wpf

我有一个WPF应用程序,它有一个工具栏,然后是一个内容控件,它嵌套一个包含Tabcontrol的网格和一个包装TabPanel的ScrollViewer。

scrollviewer工作得很好,但只有当我的鼠标悬停在制表符控件上时才会这样。只要我的光标在窗口中,如何让滚动查看器滚动?

1 个答案:

答案 0 :(得分:1)

尝试在Window中捕获事件并在TabControl中提升它,这是围绕这个(未经测试):

private void Window_PreviewMouseWheel(object sender, MouseWheelEventArgs e)
{
    if (!e.Handled)
    {       
        e.Handled = true;
        var eventArg = new MouseWheelEventArgs(e.MouseDevice, e.Timestamp, e.Delta);
        eventArg.RoutedEvent = MouseWheelEvent;
        eventArg.Source = sender;
        MyTabControl.RaiseEvent(eventArg);
    }
}