kva*_*nck 5 c# wpf animation touch
我使用WPF ScrollViewer来托管一些控件.我真的很喜欢它在触摸设备上进行交互,当你将它拉得太远时它会慢慢地恢复到原位.
它没有滚动条 - 我使用此代码点击并拖动手动鼠标滚动:
Point currentPoint = e.GetPosition(this);
// Determine the new amount to scroll.
Point delta = new Point(scrollStartPoint.X - currentPoint.X, scrollStartPoint.Y - currentPoint.Y);
if (Math.Abs(delta.X) < PixelsToMoveToBeConsideredScroll &&
Math.Abs(delta.Y) < PixelsToMoveToBeConsideredScroll)
return;
scrollTarget.X = scrollStartOffset.X + delta.X;
scrollTarget.Y = scrollStartOffset.Y + delta.Y;
// Scroll to the new position.
sv.ScrollToHorizontalOffset(scrollTarget.X);
sv.ScrollToVerticalOffset(scrollTarget.Y);
Run Code Online (Sandbox Code Playgroud)
是否有捷径可寻?目前它只是像普通的滚动文本框一样,既不会超出正常范围,也不会慢慢缓解.
如果您使用的是触摸设备,请查看 Microsoft SurfaceScrollViewer ( http://msdn.microsoft.com/en-us/library/microsoft.surface.presentation.controls.surfacescrollviewer.aspx )。它已经内置了这种行为。
正确实现触摸交互是很棘手的,找到已经做到这一点的其他人更容易。;-)
| 归档时间: |
|
| 查看次数: |
824 次 |
| 最近记录: |