我在互联网上搜索了很多,发现在WinRT和UWP平台上有一个名为OnHolding()的事件,当我们长按控件时会调用它。但是在wpf中没有这样的事件。所以有人请告诉我有没有办法在wpf中处理这样的事件?
答案 0 :(得分:1)
有MouseDown()
,MouseUp()
,TouchDown()
和TouchUp()
个事件。如果您有房产:
private DateTime timeOfHoldStart { get; set; }
在DateTime.Now
或MouseDown()
,TouchDown()
或MouseUp()
上设置为TouchUp()
您可以将保留长度与最小值进行比较
if(DateTime.Now.Subtract(timeOfHoldStart) >= new TimeSpan(0,0,1))
{
// Do your stuff..
}
注意,请参阅https://wpf.2000things.com/2013/02/05/749-handling-the-touchenter-and-touchleave-events/有关触摸事件的怪癖,例如,如果您将手指滑入控件,TouchDown()
不会被触发,但TouchEnter()
会触发。