GestureService OnFlick

2020-02-15 05:59发布

问题:

How can I add the GestureService and a handler for the Flick event in code-behind (i.e. not in XAML)?

回答1:

Firstly, make sure you've added a reference to the Silverlight Toolkit for Windows Phone 7, specifically the Microsoft.Phone.Controls.Toolkit.dll assembly. Then make sure you have an XML namespace reference for the Microsoft.Phone.Controls namespace:

xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"

Then, add the GestureService.GestureListener to the control you want to handle gestures on:

<TextBlock x:Name="test" Text="Test">
    <toolkit:GestureService.GestureListener>
        <toolkit:GestureListener Flick="TextBlock_Flick" />
    </toolkit:GestureService.GestureListener>
</TextBlock>

Then you just need to implement your logic in the event handler.

Update: The above approach is for using the GestureService in XAML; to use the GestureService in code-behind you use the GetGestureListener method:

var listener = GestureService.GetGestureListener(this.test);
listener.Flick += this.TextBlock_Flick;