WPF里面想要让超出屏幕的内容可以显示,我们很自然的就想到了ScrollViewer。
将内容限制在ScrollViewer里面,这样就可以实现滚动。
但是ScrollViewer原生事件里面有一个边缘触摸增强的事件OnManipulationBoundaryFeedback
他会导致用户触摸交互发生边界限制时提供反馈,比如拖动一个元素达到窗口边缘时,
OnManipulationBoundaryFeedback事件发生在manipulation完成操作前,在用户移动手指时触发,
如果不想要这种效果的话,可以参考以下代码:
public class ScrollViewerEx : ScrollViewer
{
protected override void OnManipulationBoundaryFeedback(ManipulationBoundaryFeedbackEventArgs e)
{
e.Handled = true;
}
}
写一个类继承自ScrollViewer,在里面标志已处理,使用到ScrollViewer的地方全部换成ScrollViewerEx,这样就不会触发触摸体验增强效果了,当然,你也可以利用这个重写,来实现更加炫酷的触摸体验。