user1589671
user1589671

Reputation: 51

How to Delete or Dispose GestureListener WP7

I have Silverlight/XNA app in which I added a GestureListener to image control. In XNA I have a game.

The game works fine until I go to the Silverlight part and add the GestureListener to the Image. After that when I go back to game it lags.

I have checked, the game starts lagging only after adding GestureListener to Image in Silverlight.

Image newTroll = new Image();
newTroll.Stretch = Stretch.None;
newTroll.Source = image;

newTroll.Margin = new Thickness(10,10,0,0);
newTroll.RenderTransformOrigin = new Point(0.5, 0.5);
newTroll.CacheMode = new BitmapCache();
newTroll.RenderTransform = new CompositeTransform();
newTroll.MouseEnter += new MouseEventHandler(newTroll_MouseEnter);

var gestureListener = GestureService.GetGestureListener(newTroll);

gestureListener.PinchStarted += new EventHandler<PinchStartedGestureEventArgs>(gestureListener_PinchStarted);
gestureListener.PinchDelta += new EventHandler<PinchGestureEventArgs>(gestureListener_PinchDelta);
gestureListener.PinchCompleted += new EventHandler<PinchGestureEventArgs>(gestureListener_PinchCompleted);

gestureListener.DragStarted += new EventHandler<DragStartedGestureEventArgs>(gestureListener_DragStarted);
gestureListener.DragDelta += new EventHandler<DragDeltaGestureEventArgs>(gestureListener_DragDelta);
gestureListener.DragCompleted += new EventHandler<DragCompletedGestureEventArgs>(gestureListener_DragCompleted);

I have searched but didn't find any solution for this problem

Update

I just read this so i am really confused

"An internal developer reports that apparently the GestureService has a static subscription to the Touch.FrameReported event which does a lot of processing on every TouchPoint.

But it seems like it never unsubscribes from the event, so you always pay for this even if you are not actively using the service any more."

Upvotes: 3

Views: 216

Answers (1)

spaghettifunk
spaghettifunk

Reputation: 2014

Have you tried to get off the Events using "-=" when appropriate ?

Upvotes: 2

Related Questions