C# 中,两个ScrollViewer嵌套在一起或者ScrollViewer里面嵌套一个DataGrid、ListBox、Listview(控件本身有scrollviewer)的时候,我们本想要的效果是鼠标滚动整个ScrollViewer的内容,但你会发现实际结果和你想像的不一样,内部有scrollviewer的内容不会随鼠标的滚动而滚动,怎么办呢?

解决办法如下:

先截取外面的ScrollViewer的滚动事件,然后再重新让外面的ScrollViewer触发滚动事件就可以了

假设有2个控件,一个是Listbox(内部名字是listbox),一个是ScrollViewer(外部),Listbox在ScrollViewer内部的,并且ListBox的scroll滚动功能都禁用为Disabled,只启用外部ScrollViewer的滚动功能,这时添加如下代码,则能使ListBox中的内容随ScrollViewer的鼠标滚动而滚动

listbox.PreviewMouseWheel+=(sender,e)
{var eventArg = new MouseWheelEventArgs(e.MouseDevice,e.TimeDevice,e.Delta);eventArg.RoutedEvent = UIElement.MouseWheelEvent;eventArg.Source = sender;var listbox = (Listbox) sender;listbox.RaiseEvent(eventArg);
};

转载于:https://www.cnblogs.com/lionwang/p/4569847.html

解决ScrollViewer嵌套的DataGrid、ListBox等控件的鼠标滚动事件无效相关推荐

  1. 关于日期控件中使用change事件无效的解决方法

    前端页面突然需要在选择时间后自动获取所选时间内的设备信息,我立刻写了一个change()方法,测试时发现没有触发 原因是:change事件其实就是在元素获得焦点的时候,保存当前值,失去焦点的时候,会将 ...

  2. qt界面中禁用某个控件的鼠标滑轮事件

    主要思想就是:当进入滑轮的滚动事件的时候,就禁用该控件,而进入鼠标点击事件的时候,就将这个控件进行激活 如:spinBox控件,鼠标的过滤事件可以参考博客:https://blog.csdn.net/ ...

  3. openlayer右键菜单_让OpenLayers的SelectFeature控件支持鼠标右键事件

    OpenLayers上的一个Feature对象单击出现一个气泡很容易实现,但是右键出现点菜单什么的就不容易了,关键在于SelectFeature控件不支持右键事件,所以我就改之.. 修改的源文件是基于 ...

  4. [收藏]为DataGrid添加CheckBox控件

    作者:孟宪会 出自:[孟宪会之精彩世界] 发布日期:2003年5月23日 8点26分11秒 为DataGrid添加CheckBox控件,并实现"全选"功能.这里是实现的例子 VB. ...

  5. vue的$nextTick使用总结,this.$refs为undefined的解决办法,element Ui的树形控件setCheckedKeys方法无法使用

    vue的$nextTick使用总结,this.$refs为undefined的解决办法,element Ui的树形控件setCheckedKeys方法无法使用 参考文章: (1)vue的$nextTi ...

  6. WPF 实现 DataGrid/ListView 分页控件

    原文:WPF 实现 DataGrid/ListView 分页控件 在WPF中,通常会选用DataGrid/ListView进行数据展示,如果数据量不多,可以直接一个页面显示出来.如果数据量很大,200 ...

  7. 解决SurfaceView调用setZOrderOnTop(true)遮挡其他控件的问题

    解决SurfaceView调用setZOrderOnTop(true)遮挡其他控件的问题 参考文章: (1)解决SurfaceView调用setZOrderOnTop(true)遮挡其他控件的问题 ( ...

  8. WPF DataGrid ListView等控件Binding LINQ数据源

    Binding及与之配套的数据转换和校验是WPF的核心.一些详细的只是介绍,园子里到处都是,这里DebugLZQ不再赘述. 首先回顾下WPF常用的Binding数据源 1.控件属性---控件的属性与属 ...

  9. WPF 滚动条控件ScrollViewer的使用及自定义滚动条控件(一)

    WPF 滚动条控件ScrollViewer的使用及自定义滚动条控件(一) 首先看一下两种空间的运行效果: 左边是自定义滑条控件,右边是自带的滑条控件: **滑条使用方法:**我们在ScrollView ...

最新文章

  1. UI组件之TextView及其子类(一)TextView和EditText
  2. Hdu 2089-不要62 数位dp
  3. 关于C++,Java和Python中的随机数生成法
  4. csharp的几个特殊操作符
  5. Yocto Project - basic - 01 - Quick Start
  6. Dotnet程序集自动生成版本号
  7. innodb数据备份语句
  8. linux-msyql
  9. java (Eclipse)连接MySQL数据库
  10. 《Java核心技术 卷12》读书笔记
  11. Datawhale组队学习周报(第033周)
  12. js判断时间是否为今天日期(判断日期与当前日期相差多少天)
  13. 近距离传感器(proximity sensor)
  14. 计算机在信息处理中的作品用,计算机信息处理技术在办公自动化中的运用
  15. 组合业务流程管理与区块链
  16. 白日梦丨AIGC还是艺术?AI开源公司Stability AI化技术为艺术
  17. 市值一夜间蒸发千亿,拼多多离不开黄峥?
  18. 五九福利导航PHP源码
  19. 国家发布电子病历共享文档规范
  20. 连锁多门店收银系统之进销存的采购进货单源码功能逻辑

热门文章

  1. Linux的LAMP
  2. 制作本地yum镜像站
  3. WebSocket(伍) 断开连接
  4. ASP.NET之通过JS向服务端(后台)发出请求(__doPostBack is undefined)
  5. MathType 插入定义的chapter and section break后无法隐藏
  6. php实现从本网站每天出站连接向目标网站贡献的IP和PV的统计
  7. 2010.11.25感恩节
  8. ***引发《唐山大地震》 在线下载瞬间中毒
  9. 长大了,烦恼就像是滔滔江水
  10. 如何在三层交换机上实现跨VLAN 的DHCP配置