2012-03-29 21 views
1

我正在爲MS Surface 2.0中的Samsung SUR40構建一個應用程序。我不能讓LostTouchCapture工作了。C#UIElement LostTouchCapture OnLostTouchCapture

這是我的XAML代碼:

<Rectangle 
    x:Name="ActiveArea" 
    Fill="Transparent" 
    TouchDown="OnTouchDown" 
    TouchMove="OnTouchMove" 
    LostTouchCapture="OnLostTouchCapture" 
/> 

一塊我的C#代碼:

private void OnLostTouchCapture(object sender, TouchEventArgs args) 
{ 
    Console.WriteLine("Hello World"); 
} 

觸地得分和TouchMove做的工作。但我在LostTouchCapture有問題。 該功能正在工作,但現在它的破產,我不知道爲什麼。

回答

2

我沒有修復它,但我使用TouchLeave="OnTouchLeave"來代替。

+0

我不認爲這是最好的解決方案,因爲它不斷開火,但它似乎是迄今爲止唯一的解決方案。我注意到,如果你刪除了'TouchDown'事件,'TouchUp'被觸發(你應該總是添加'IsManipulationEnable = true'到所需的UI元素),但是如果你同時放置了這兩個,那麼'TouchUp'就不會被觸發。也許它與處理'TouchDown'事件有關,但是我已經將它標記爲'false',但仍然沒有運氣。 – 2013-10-23 11:14:32

0

你用錯了事件不管怎麼說,如果你想獲得當觸摸離開矩形的情況下,TouchLeave是你正在尋找的事件,LostTouchCapture事件是,當你在一個UIElement(用於DragDrop跟蹤TouchDeviceManipulation)在TouchDevice上使用Capture