我試圖消除WPF中的TouchDevices,因此我可以忽略非手指觸摸,因爲斑點似乎觸發了我不想要的事件。
起初我有一些簡單的像這樣在WPF中拋出觸摸
private void SurfaceWindow1_PreviewTouchDown(object sender, TouchEventArgs e)
{
if (!e.TouchDevice.GetIsFingerRecognized() && InteractiveSurface.PrimarySurfaceDevice.IsFingerRecognitionSupported == true)
{
e.Handled = true;
}
}
效果很好停止與喜歡的東西里面ScatterViewItems和操作觸摸交互。但是在PreviewTouchDown之前必須有其他事情發生,因爲我可以使用blob來激活SVI並將其帶到頂端,儘管不會發生其他操作。我猜想,SVI上的TouchEnter仍然顯示出來,並將其推向前進,但在所有元素上處理TouchEnter給了我相同的東西,所以還有其他事情正在進行。
我看着Touch.FrameReported但SVIS聽到它
private void myTouchFrameHandler(object sender, TouchFrameEventArgs e)
{
foreach (TouchPoint _tp in e.GetTouchPoints(this)) {
if (!_tp.TouchDevice.GetIsFingerRecognized())
{
this.ReleaseAllTouchCaptures();
}
}
}
任何想法之前,我不能釋放的是正確TouchCaptures?
謝謝
哇這種解決方案的方式更穩健:
行爲可以通過設置其屬性TestCondition這是默認定製!這些附加的屬性非常酷,我不得不看看,我不知道有一個相對ZIndex堆棧。這使SUR40成爲一個堅實的觸摸屏。太感謝了! – aleatoric 2012-03-26 14:06:22
是的,我很想欣賞附加的屬性和行爲:)。他們爲優秀和靈活的解決方案。 – Dominik 2012-04-03 11:02:52