• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

RX_3

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

WPF解决当ScrollViewer中嵌套ItemsControl时,不能使用鼠标来滚动翻页

1.在DataGrid中添加PreviewMouseWheel事件,并将事件的Handled属性设置为false,以便将滚动事件传递给ScrollViewer。示例代码如下:

<DataGrid PreviewMouseWheel="DataGrid_PreviewMouseWheel">
    <!-- DataGrid的其他设置 -->
</DataGrid>
private void DataGrid_PreviewMouseWheel(object sender, MouseWheelEventArgs e)
{
    e.Handled = false;
}

2.在ScrollViewer中添加PreviewMouseWheel事件,并使用ScrollViewer.ScrollToVerticalOffset方法手动滚动。示例代码如下:

<ScrollViewer PreviewMouseWheel="ScrollViewer_PreviewMouseWheel">
    <DataGrid>
        <!-- DataGrid的其他设置 -->
    </DataGrid>
</ScrollViewer>
private void ScrollViewer_PreviewMouseWheel(object sender, MouseWheelEventArgs e)
{
    e.Handled = true;
    var scrollViewer = (ScrollViewer)sender;
    scrollViewer.ScrollToVerticalOffset(scrollViewer.VerticalOffset - e.Delta);
}

 

posted on 2024-03-27 21:17  RX_3  阅读(329)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3