技术开发 频道

Windows Phone的Silverlight Toolkit

  GestureListener控件

  从Windows Phone 7开发31日谈开始到目前为止,你可能一直在想什么时候能找到在程序中处理用户手势的方法。就在今天!(免责声明:这是其中的“一种方法”。其实有很多种方法来处理手势,但无疑这是最简单的一种,如果你是一路读下来的就会发现这是这个系列所推崇的。用最简单的方法实现Windows Phone中的内容。但这未必是你要一直遵从的非常好的实践。)

  好了,都说清楚了,我们来讨论GestureListener吧。和ContextMenu很像,我们要让GestureService知道我们创建了一个GestureListener,然后通常要为我们期待的特定手势配备事件处理程序。记住是在XAML元素中应用它,所以手势只会在被应用的控件中才能被识别。GestureListener支持以下手势:

  Tap

  DoubleTap

  Hold

  Flick

  Pinch

  Drag and Drop

  每一个手势都是以这种方法实现的,实现起来非常简单。收缩和拖拽操作还有一些细节(通常Delta过程介于手势开始和完成之间)。下面是XAML代码(在另一个矩形中):

<Rectangle Width="100" Height="100" Fill="Blue">
    
<toolkit:GestureService.GestureListener>
        
<toolkit:GestureListener
            DoubleTap
="DoubleTapped"
            Tap
="Tapped"
            Hold
="Held"
            DragStarted
="DragStart"
                DragDelta
="DragDelta"
                DragCompleted
="DragEnd"
            Flick
="Flicked"
            PinchStarted
="PinchStart"
                PinchDelta
="PinchDelta"
                PinchCompleted
="PinchEnd" />
    
</toolkit:GestureService.GestureListener>
</Rectangle>

 

 

0
相关文章