WPF 控件库——带有惯性的ScrollViewer

一、先看看效果

WPF 控件库——带有惯性的ScrollViewer

 

 

二、原理

  虽然效果很简单,但是网上的一些资料涉及的代码量非常可观,而且效果也不是很理想,滚动的时候没有一个顺滑感。我这里提供的源码一共120多行,就能实现上图的效果。

  本质上我们只要接管ScrollViewer的滚动逻辑,并且把这个逻辑替换成带有惯性的即可,那么如何去接管呢?这里的关键是先屏蔽ScrollViewer的鼠标滚轮事件:

1 protected override void OnMouseWheel(MouseWheelEventArgs e) 2 { 3 e.Handled = true; 4 }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpffyy.html