private static PannableBehavior GetOrCreatePannableBehavior(FrameworkElement element) { // Try to get the behavior if it already exist. var interactor = element.GetWpfInteractor(); if (interactor != null) { var existingBehavior = interactor.GetBehavior(BehaviorType.Pannable) as PannableBehavior; if (existingBehavior != null) { return(existingBehavior); } } // Subscribe to the unloaded event. element.Unloaded += OnPannableElementUnloaded; // Create default pannable behavior. // The settings here are set via the corresponding dependency properties. var behavior = new PannableBehavior() { PanDirectionsAvailable = PanDirection.All, Profile = PanningProfile.Radial }; // Subscribe to the panning event. behavior.Panning += OnPanning; // Add the behavior. AddBehavior(element, behavior); return(behavior); }
private static PannableBehavior GetOrCreatePannableBehavior(FrameworkElement element) { // Try to get the behavior if it already exist. var interactor = element.GetWpfInteractor(); if (interactor != null) { var existingBehavior = interactor.GetBehavior(BehaviorType.Pannable) as PannableBehavior; if (existingBehavior != null) { return existingBehavior; } } // Subscribe to the unloaded event. element.Unloaded += OnPannableElementUnloaded; // Create default pannable behavior. // The settings here are set via the corresponding dependency properties. var behavior = new PannableBehavior() { PanDirectionsAvailable = PanDirection.All, Profile = PanningProfile.Radial }; // Subscribe to the panning event. behavior.Panning += OnPanning; // Add the behavior. AddBehavior(element, behavior); return behavior; }