InteractiveOverlay¶
Namespace: ThinkGeo.UI.Wpf
Base overlay that processes user interactions (mouse, keyboard, touch) against the map and raises interaction events.
public abstract class InteractiveOverlay : WpfDrawingOverlay, System.Windows.Media.Composition.DUCE+IResource, System.Windows.Media.Animation.IAnimatable, System.Windows.IInputElement, System.Windows.IFrameworkInputElement, System.ComponentModel.ISupportInitialize, System.Windows.Markup.IHaveResources, System.Windows.Markup.IQueryAmbient, System.Windows.Markup.IAddChild, System.IDisposable
Inheritance Object → DispatcherObject → DependencyObject → Visual → UIElement → FrameworkElement → Panel → Canvas → Overlay → WpfDrawingOverlay → InteractiveOverlay
Implements IResource, IAnimatable, IInputElement, IFrameworkInputElement, ISupportInitialize, IHaveResources, IQueryAmbient, IAddChild, IDisposable
Properties¶
DoubleClickMaxIntervalInMS¶
Gets or sets the maximum number of milliseconds allowed between clicks to register as a double click.
public static int DoubleClickMaxIntervalInMS { get; set; }
Property Value¶
Remarks:
If the interval between successive clicks exceeds this value, the input is treated as two independent single clicks.
DrawingMarginPercentage¶
Gets or sets the additional drawing margin, expressed as a percentage of the map height.
public double DrawingMarginPercentage { get; set; }
Property Value¶
Double
The percentage buffer applied around the map extent to keep partially visible content, such as labels, in view.
Remarks:
The extra margin helps ensure symbols or labels drawn just outside the current extent render correctly when they overlap the view.
Name¶
Gets or sets the logical name of the overlay, constrained to characters accepted by .
public string Name { get; set; }
Property Value¶
CanRefreshRegion¶
public bool CanRefreshRegion { get; protected set; }
Property Value¶
IsBase¶
public bool IsBase { get; set; }
Property Value¶
MapArguments¶
Gets or sets the map-specific arguments that describe the view, projection, and dimensions used during drawing.
public IMapArguments MapArguments { get; set; }
Property Value¶
IMapArguments
OverlayCanvas¶
Gets the canvas that hosts the overlay visuals. This property is obsolete; interact with the overlay itself instead.
public Canvas OverlayCanvas { get; }
Property Value¶
Canvas
DrawingExceptionMode¶
This property gets and sets the DrawingExceptionMode used when an exception occurs during drawing.
public DrawingExceptionMode DrawingExceptionMode { get; set; }
Property Value¶
DrawingExceptionMode
ThrowingExceptionMode¶
Gets or sets how the overlay responds when drawing or refresh operations throw an exception.
public ThrowingExceptionMode ThrowingExceptionMode { get; set; }
Property Value¶
Remarks:
When set to ThrowingExceptionMode.SuppressException, the overlay swallows errors; otherwise it raises Overlay.ThrowingException and permits the exception to propagate.
IsVisible¶
Gets or sets a value indicating whether the overlay is visible on the map.
public bool IsVisible { get; set; }
Property Value¶
Remarks:
Setting the property updates . It will internally call Overlay.RefreshAsync(CancellationToken) if needed.
Attribution¶
Gets the attribution text displayed for the overlay.
public string Attribution { get; protected set; }
Property Value¶
Remarks:
Set by derived overlays to describe the data source rendered on the map.
IsEmpty¶
Gets a value indicating whether the overlay has any content to draw.
public bool IsEmpty { get; }
Property Value¶
Remarks:
Derived overlays override this property so the draw pipeline can skip empty overlays and improve performance.
AutoRefreshInterval¶
public TimeSpan AutoRefreshInterval { get; set; }
Property Value¶
Background¶
public Brush Background { get; set; }
Property Value¶
Brush
Children¶
public UIElementCollection Children { get; }
Property Value¶
UIElementCollection
IsItemsHost¶
public bool IsItemsHost { get; set; }
Property Value¶
LogicalOrientationPublic¶
public Orientation LogicalOrientationPublic { get; }
Property Value¶
Orientation
HasLogicalOrientationPublic¶
public bool HasLogicalOrientationPublic { get; }
Property Value¶
Style¶
public Style Style { get; set; }
Property Value¶
Style
OverridesDefaultStyle¶
public bool OverridesDefaultStyle { get; set; }
Property Value¶
UseLayoutRounding¶
public bool UseLayoutRounding { get; set; }
Property Value¶
Triggers¶
public TriggerCollection Triggers { get; }
Property Value¶
TriggerCollection
TemplatedParent¶
public DependencyObject TemplatedParent { get; }
Property Value¶
DependencyObject
Resources¶
public ResourceDictionary Resources { get; set; }
Property Value¶
ResourceDictionary
DataContext¶
public object DataContext { get; set; }
Property Value¶
BindingGroup¶
public BindingGroup BindingGroup { get; set; }
Property Value¶
BindingGroup
Language¶
public XmlLanguage Language { get; set; }
Property Value¶
XmlLanguage
Tag¶
public object Tag { get; set; }
Property Value¶
InputScope¶
public InputScope InputScope { get; set; }
Property Value¶
InputScope
ActualWidth¶
public double ActualWidth { get; }
Property Value¶
ActualHeight¶
public double ActualHeight { get; }
Property Value¶
LayoutTransform¶
public Transform LayoutTransform { get; set; }
Property Value¶
Transform
Width¶
public double Width { get; set; }
Property Value¶
MinWidth¶
public double MinWidth { get; set; }
Property Value¶
MaxWidth¶
public double MaxWidth { get; set; }
Property Value¶
Height¶
public double Height { get; set; }
Property Value¶
MinHeight¶
public double MinHeight { get; set; }
Property Value¶
MaxHeight¶
public double MaxHeight { get; set; }
Property Value¶
FlowDirection¶
public FlowDirection FlowDirection { get; set; }
Property Value¶
FlowDirection
Margin¶
public Thickness Margin { get; set; }
Property Value¶
Thickness
HorizontalAlignment¶
public HorizontalAlignment HorizontalAlignment { get; set; }
Property Value¶
HorizontalAlignment
VerticalAlignment¶
public VerticalAlignment VerticalAlignment { get; set; }
Property Value¶
VerticalAlignment
FocusVisualStyle¶
public Style FocusVisualStyle { get; set; }
Property Value¶
Style
Cursor¶
public Cursor Cursor { get; set; }
Property Value¶
Cursor
ForceCursor¶
public bool ForceCursor { get; set; }
Property Value¶
IsInitialized¶
public bool IsInitialized { get; }
Property Value¶
IsLoaded¶
public bool IsLoaded { get; }
Property Value¶
ToolTip¶
public object ToolTip { get; set; }
Property Value¶
ContextMenu¶
public ContextMenu ContextMenu { get; set; }
Property Value¶
ContextMenu
Parent¶
public DependencyObject Parent { get; }
Property Value¶
DependencyObject
HasAnimatedProperties¶
public bool HasAnimatedProperties { get; }
Property Value¶
InputBindings¶
public InputBindingCollection InputBindings { get; }
Property Value¶
InputBindingCollection
CommandBindings¶
public CommandBindingCollection CommandBindings { get; }
Property Value¶
CommandBindingCollection
AllowDrop¶
public bool AllowDrop { get; set; }
Property Value¶
DesiredSize¶
public Size DesiredSize { get; }
Property Value¶
Size
IsMeasureValid¶
public bool IsMeasureValid { get; }
Property Value¶
IsArrangeValid¶
public bool IsArrangeValid { get; }
Property Value¶
RenderSize¶
public Size RenderSize { get; set; }
Property Value¶
Size
RenderTransform¶
public Transform RenderTransform { get; set; }
Property Value¶
Transform
RenderTransformOrigin¶
public Point RenderTransformOrigin { get; set; }
Property Value¶
Point
IsMouseDirectlyOver¶
public bool IsMouseDirectlyOver { get; }
Property Value¶
IsMouseOver¶
public bool IsMouseOver { get; }
Property Value¶
IsStylusOver¶
public bool IsStylusOver { get; }
Property Value¶
IsKeyboardFocusWithin¶
public bool IsKeyboardFocusWithin { get; }
Property Value¶
IsMouseCaptured¶
public bool IsMouseCaptured { get; }
Property Value¶
IsMouseCaptureWithin¶
public bool IsMouseCaptureWithin { get; }
Property Value¶
IsStylusDirectlyOver¶
public bool IsStylusDirectlyOver { get; }
Property Value¶
IsStylusCaptured¶
public bool IsStylusCaptured { get; }
Property Value¶
IsStylusCaptureWithin¶
public bool IsStylusCaptureWithin { get; }
Property Value¶
IsKeyboardFocused¶
public bool IsKeyboardFocused { get; }
Property Value¶
IsInputMethodEnabled¶
public bool IsInputMethodEnabled { get; }
Property Value¶
Opacity¶
public double Opacity { get; set; }
Property Value¶
OpacityMask¶
public Brush OpacityMask { get; set; }
Property Value¶
Brush
BitmapEffect¶
public BitmapEffect BitmapEffect { get; set; }
Property Value¶
BitmapEffect
Effect¶
public Effect Effect { get; set; }
Property Value¶
Effect
BitmapEffectInput¶
public BitmapEffectInput BitmapEffectInput { get; set; }
Property Value¶
BitmapEffectInput
CacheMode¶
public CacheMode CacheMode { get; set; }
Property Value¶
CacheMode
Uid¶
public string Uid { get; set; }
Property Value¶
Visibility¶
public Visibility Visibility { get; set; }
Property Value¶
Visibility
ClipToBounds¶
public bool ClipToBounds { get; set; }
Property Value¶
Clip¶
public Geometry Clip { get; set; }
Property Value¶
Geometry
SnapsToDevicePixels¶
public bool SnapsToDevicePixels { get; set; }
Property Value¶
IsFocused¶
public bool IsFocused { get; }
Property Value¶
IsEnabled¶
public bool IsEnabled { get; set; }
Property Value¶
IsHitTestVisible¶
public bool IsHitTestVisible { get; set; }
Property Value¶
Focusable¶
public bool Focusable { get; set; }
Property Value¶
PersistId¶
public int PersistId { get; }
Property Value¶
IsManipulationEnabled¶
public bool IsManipulationEnabled { get; set; }
Property Value¶
AreAnyTouchesOver¶
public bool AreAnyTouchesOver { get; }
Property Value¶
AreAnyTouchesDirectlyOver¶
public bool AreAnyTouchesDirectlyOver { get; }
Property Value¶
AreAnyTouchesCapturedWithin¶
public bool AreAnyTouchesCapturedWithin { get; }
Property Value¶
AreAnyTouchesCaptured¶
public bool AreAnyTouchesCaptured { get; }
Property Value¶
TouchesCaptured¶
public IEnumerable<TouchDevice> TouchesCaptured { get; }
Property Value¶
TouchesCapturedWithin¶
public IEnumerable<TouchDevice> TouchesCapturedWithin { get; }
Property Value¶
TouchesOver¶
public IEnumerable<TouchDevice> TouchesOver { get; }
Property Value¶
TouchesDirectlyOver¶
public IEnumerable<TouchDevice> TouchesDirectlyOver { get; }
Property Value¶
DependencyObjectType¶
public DependencyObjectType DependencyObjectType { get; }
Property Value¶
DependencyObjectType
IsSealed¶
public bool IsSealed { get; }
Property Value¶
Dispatcher¶
public Dispatcher Dispatcher { get; }
Property Value¶
Dispatcher
Methods¶
MouseDown(InteractionArguments)¶
This method will simulate the MouseDown interaction.
public InteractiveResult MouseDown(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
This parameter is the interaction arguments for the method.
Returns¶
InteractiveResult
Interaction results of this method.
Remarks:
This method is the concrete wrapper for its virtual Core method.
As this is a concrete public method that wraps a Core method, we reserve the right to add events and other logic to pre- or post-process data returned by the Core version of the method. In this way, we leave our framework open on our end, but also allow you the developer to extend our logic to suit your needs. If you have questions about this, please contact our support team as we would be happy to work with you on extending our framework.
MouseDownCore(InteractionArguments)¶
When overridden, performs the overlay-specific logic for a mouse-down interaction.
protected InteractiveResult MouseDownCore(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information about the pointer location, button state, and map coordinate.
Returns¶
InteractiveResult
An describing additional work for the overlay to carry out.
Exceptions¶
ArgumentNullException
Thrown when is null.
MouseMove(InteractionArguments)¶
Handles a mouse-move interaction by firing InteractiveOverlay.MapMouseMove and delegating to .
public InteractiveResult MouseMove(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information about the pointer movement and map coordinate.
Returns¶
InteractiveResult
The result returned by , or a default result when the overlay has not been initialized.
Exceptions¶
ArgumentNullException
Thrown when is null.
MouseMoveCore(InteractionArguments)¶
When overridden, performs the overlay-specific logic for a mouse-move interaction.
protected InteractiveResult MouseMoveCore(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information about the pointer movement and map coordinate.
Returns¶
InteractiveResult
An describing additional work for the overlay to carry out.
Exceptions¶
ArgumentNullException
Thrown when is null.
ManipulationStarted(InteractionArguments)¶
public InteractiveResult ManipulationStarted(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Returns¶
ManipulationStartedCore(InteractionArguments)¶
When overridden, performs the overlay-specific logic for the start of a manipulation gesture.
protected InteractiveResult ManipulationStartedCore(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information describing the touch gesture that started.
Returns¶
InteractiveResult
An describing follow-up work for the overlay to perform.
ManipulationDelta(InteractionArguments)¶
public InteractiveResult ManipulationDelta(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Returns¶
ManipulationDeltaCore(InteractionArguments)¶
When overridden, performs the overlay-specific logic for changes during a manipulation gesture.
protected InteractiveResult ManipulationDeltaCore(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information describing the current manipulation delta.
Returns¶
InteractiveResult
An describing follow-up work for the overlay to perform.
Exceptions¶
ArgumentNullException
Thrown when is null.
ManipulationCompleted(InteractionArguments)¶
public InteractiveResult ManipulationCompleted(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Returns¶
ManipulationCompletedCore(InteractionArguments)¶
When overridden, performs the overlay-specific logic once a manipulation gesture completes.
protected InteractiveResult ManipulationCompletedCore(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information describing the completed manipulation gesture.
Returns¶
InteractiveResult
An describing follow-up work for the overlay to perform.
MouseUp(InteractionArguments)¶
Handles a mouse-up interaction by raising events and delegating to .
public InteractiveResult MouseUp(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information about the pointer location, button state, and map coordinate.
Returns¶
InteractiveResult
The result returned by , or a default result when the overlay has not been initialized.
Exceptions¶
ArgumentNullException
Thrown when is null.
MouseUpCore(InteractionArguments)¶
When overridden, performs the overlay-specific logic for a mouse-up interaction.
protected InteractiveResult MouseUpCore(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information about the pointer location, button state, and map coordinate.
Returns¶
InteractiveResult
An describing follow-up work for the overlay to perform.
Exceptions¶
ArgumentNullException
Thrown when is null.
MouseClick(InteractionArguments)¶
Handles a mouse click by raising events and delegating to .
public InteractiveResult MouseClick(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information about the completed click and associated map coordinate.
Returns¶
InteractiveResult
The result returned by , or a default result when the overlay has not been initialized.
Exceptions¶
ArgumentNullException
Thrown when is null.
MouseClickCore(InteractionArguments)¶
When overridden, performs the overlay-specific logic for a mouse click.
protected InteractiveResult MouseClickCore(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information about the completed click and associated map coordinate.
Returns¶
InteractiveResult
An describing follow-up work for the overlay to perform.
Exceptions¶
ArgumentNullException
Thrown when is null.
MouseDoubleClick(InteractionArguments)¶
Handles a mouse double-click by raising events and delegating to .
public InteractiveResult MouseDoubleClick(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information about the double-click and associated map coordinate.
Returns¶
InteractiveResult
The result returned by , or a default result when the overlay has not been initialized.
Exceptions¶
ArgumentNullException
Thrown when is null.
MouseDoubleClickCore(InteractionArguments)¶
When overridden, performs the overlay-specific logic for a mouse double-click.
protected InteractiveResult MouseDoubleClickCore(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information about the double-click and associated map coordinate.
Returns¶
InteractiveResult
An describing follow-up work for the overlay to perform.
Exceptions¶
ArgumentNullException
Thrown when is null.
MouseWheel(InteractionArguments)¶
Handles mouse-wheel input by raising events and delegating to .
public InteractiveResult MouseWheel(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information about the wheel delta and associated map coordinate.
Returns¶
InteractiveResult
The result returned by , or a default result when the overlay has not been initialized.
Exceptions¶
ArgumentNullException
Thrown when is null.
MouseWheelCore(InteractionArguments)¶
When overridden, performs the overlay-specific logic for mouse-wheel input.
protected InteractiveResult MouseWheelCore(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information about the wheel delta and associated map coordinate.
Returns¶
InteractiveResult
An describing follow-up work for the overlay to perform.
Exceptions¶
ArgumentNullException
Thrown when is null.
MouseLeave(InteractionArguments)¶
Handles the pointer leaving the map and delegates to .
public InteractiveResult MouseLeave(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information about the pointer state when it left the map.
Returns¶
InteractiveResult
The result returned by , or a default result when the overlay has not been initialized.
Exceptions¶
ArgumentNullException
Thrown when is null.
MouseLeaveCore(InteractionArguments)¶
When overridden, performs the overlay-specific logic for the pointer leaving the map.
protected InteractiveResult MouseLeaveCore(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information about the pointer state when it left the map.
Returns¶
InteractiveResult
An describing follow-up work for the overlay to perform.
Exceptions¶
ArgumentNullException
Thrown when is null.
MouseEnter(InteractionArguments)¶
Handles the pointer entering the map and delegates to .
public InteractiveResult MouseEnter(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information about the pointer state when it entered the map.
Returns¶
InteractiveResult
The result returned by , or a default result when the overlay has not been initialized.
Exceptions¶
ArgumentNullException
Thrown when is null.
MouseEnterCore(InteractionArguments)¶
When overridden, performs the overlay-specific logic for the pointer entering the map.
protected InteractiveResult MouseEnterCore(InteractionArguments interactionArguments)
Parameters¶
interactionArguments InteractionArguments
Information about the pointer state when it entered the map.
Returns¶
InteractiveResult
An describing follow-up work for the overlay to perform.
Exceptions¶
ArgumentNullException
Thrown when is null.
KeyUp(KeyEventInteractionArguments)¶
Handles a key release over the map and delegates to .
public InteractiveResult KeyUp(KeyEventInteractionArguments interactionArguments)
Parameters¶
interactionArguments KeyEventInteractionArguments
Information about the key that was released and any modifier state.
Returns¶
InteractiveResult
The result returned by , or a default result when the overlay has not been initialized.
Exceptions¶
ArgumentNullException
Thrown when is null.
KeyUpCore(KeyEventInteractionArguments)¶
When overridden, performs the overlay-specific logic for a key release.
protected InteractiveResult KeyUpCore(KeyEventInteractionArguments interactionArguments)
Parameters¶
interactionArguments KeyEventInteractionArguments
Information about the key that was released and any modifier state.
Returns¶
InteractiveResult
An describing follow-up work for the overlay to perform.
Exceptions¶
ArgumentNullException
Thrown when is null.
KeyDown(KeyEventInteractionArguments)¶
Handles a key press over the map and delegates to .
public InteractiveResult KeyDown(KeyEventInteractionArguments interactionArguments)
Parameters¶
interactionArguments KeyEventInteractionArguments
Information about the key that was pressed and any modifier state.
Returns¶
InteractiveResult
The result returned by , or a default result when the overlay has not been initialized.
Exceptions¶
ArgumentNullException
Thrown when is null.
KeyDownCore(KeyEventInteractionArguments)¶
When overridden, performs the overlay-specific logic for a key press.
protected InteractiveResult KeyDownCore(KeyEventInteractionArguments interactionArguments)
Parameters¶
interactionArguments KeyEventInteractionArguments
Information about the key that was pressed and any modifier state.
Returns¶
InteractiveResult
An describing follow-up work for the overlay to perform.
Exceptions¶
ArgumentNullException
Thrown when is null.
OnMapMouseDown(MapMouseDownInteractiveOverlayEventArgs)¶
Raises the InteractiveOverlay.MapMouseDown event.
protected void OnMapMouseDown(MapMouseDownInteractiveOverlayEventArgs e)
Parameters¶
e MapMouseDownInteractiveOverlayEventArgs
Event data describing the mouse-down interaction.
OnMapMouseMove(MapMouseMoveInteractiveOverlayEventArgs)¶
Raises the InteractiveOverlay.MapMouseMove event.
protected void OnMapMouseMove(MapMouseMoveInteractiveOverlayEventArgs e)
Parameters¶
e MapMouseMoveInteractiveOverlayEventArgs
Event data describing the mouse move.
OnMapMouseUp(MapMouseUpInteractiveOverlayEventArgs)¶
Raises the InteractiveOverlay.MapMouseUp event.
protected void OnMapMouseUp(MapMouseUpInteractiveOverlayEventArgs e)
Parameters¶
e MapMouseUpInteractiveOverlayEventArgs
Event data describing the mouse-up interaction.
OnMapMouseClick(MapMouseClickInteractiveOverlayEventArgs)¶
Raises the InteractiveOverlay.MapMouseClick event.
protected void OnMapMouseClick(MapMouseClickInteractiveOverlayEventArgs e)
Parameters¶
e MapMouseClickInteractiveOverlayEventArgs
Event data describing the completed click.
OnMapMouseDoubleClick(MapMouseDoubleClickInteractiveOverlayEventArgs)¶
Raises the InteractiveOverlay.MapMouseDoubleClick event.
protected void OnMapMouseDoubleClick(MapMouseDoubleClickInteractiveOverlayEventArgs e)
Parameters¶
e MapMouseDoubleClickInteractiveOverlayEventArgs
Event data describing the double-click.
OnMapMouseWheel(MapMouseWheelInteractiveOverlayEventArgs)¶
Raises the InteractiveOverlay.MapMouseWheel event.
protected void OnMapMouseWheel(MapMouseWheelInteractiveOverlayEventArgs e)
Parameters¶
e MapMouseWheelInteractiveOverlayEventArgs
Event data describing the mouse-wheel interaction.
OnMapMouseLeave(MapMouseLeaveInteractiveOverlayEventArgs)¶
Raises the InteractiveOverlay.MapMouseLeave event.
protected void OnMapMouseLeave(MapMouseLeaveInteractiveOverlayEventArgs e)
Parameters¶
e MapMouseLeaveInteractiveOverlayEventArgs
Event data describing the pointer leaving the map.
OnMapMouseEnter(MapMouseEnterInteractiveOverlayEventArgs)¶
Raises the InteractiveOverlay.MapMouseEnter event.
protected void OnMapMouseEnter(MapMouseEnterInteractiveOverlayEventArgs e)
Parameters¶
e MapMouseEnterInteractiveOverlayEventArgs
Event data describing the pointer entering the map.
OnMapKeyUp(MapKeyUpInteractiveOverlayEventArgs)¶
Raises the InteractiveOverlay.MapKeyUp event.
protected void OnMapKeyUp(MapKeyUpInteractiveOverlayEventArgs e)
Parameters¶
e MapKeyUpInteractiveOverlayEventArgs
Event data describing the key release.
OnMapKeyDown(MapKeyDownInteractiveOverlayEventArgs)¶
Raises the InteractiveOverlay.MapKeyDown event.
protected void OnMapKeyDown(MapKeyDownInteractiveOverlayEventArgs e)
Parameters¶
e MapKeyDownInteractiveOverlayEventArgs
Event data describing the key press.
TransformCore(RectangleShape, ExtentChangedType)¶
Updates the internal tile transform to reflect an extent change.
protected void TransformCore(RectangleShape targetExtent, ExtentChangedType extentChangedType)
Parameters¶
targetExtent RectangleShape
The map extent being rendered.
extentChangedType ExtentChangedType
The reason the extent changed, such as pan or zoom.
DrawAsyncCore(RectangleShape, OverlayRefreshType, CancellationToken)¶
Draws the interactive overlay by composing the backing layer tile for the requested extent.
protected Task DrawAsyncCore(RectangleShape targetExtent, OverlayRefreshType overlayRefreshType, CancellationToken cancellationToken)
Parameters¶
targetExtent RectangleShape
The world extent currently visible on the map.
overlayRefreshType OverlayRefreshType
The type of refresh being performed (pan, redraw, or other).
cancellationToken CancellationToken
A token used to cancel the draw before completion.
Returns¶
Task
A task that completes once the overlay finishes drawing.
DrawTileAsyncCore(GeoCanvas)¶
When overridden, draws overlay content onto the provided canvas before it is committed to the tile view.
protected Task DrawTileAsyncCore(GeoCanvas geoCanvas)
Parameters¶
geoCanvas GeoCanvas
The canvas being rendered to.
Returns¶
Task
A task that completes when drawing is finished.
CommttingDrawing(OverlayRefreshType, LayerTileView)¶
When overridden, allows derived overlays to finalize drawing before the tile is rendered.
protected void CommttingDrawing(OverlayRefreshType overlayRefreshType, LayerTileView layerTile)
Parameters¶
overlayRefreshType OverlayRefreshType
The type of refresh being performed.
layerTile LayerTileView
The tile that will render to the overlay.
GetBufferedExtent(RectangleShape, Double)¶
internal RectangleShape GetBufferedExtent(RectangleShape targetExtent, double resolution)
Parameters¶
targetExtent RectangleShape
resolution Double
Returns¶
RectangleShape
Events¶
MapMouseMove¶
Occurs when the mouse moves across the map.
public event EventHandler<MapMouseMoveInteractiveOverlayEventArgs> MapMouseMove;
MapMouseDown¶
Occurs when a mouse button is pressed on the map.
public event EventHandler<MapMouseDownInteractiveOverlayEventArgs> MapMouseDown;
MapMouseUp¶
Occurs when a mouse button is released on the map.
public event EventHandler<MapMouseUpInteractiveOverlayEventArgs> MapMouseUp;
MapMouseClick¶
Occurs when the map registers a mouse click (press and release without movement).
public event EventHandler<MapMouseClickInteractiveOverlayEventArgs> MapMouseClick;
MapMouseDoubleClick¶
This event will be fired when Mouse double-clicked on the Map.
public event EventHandler<MapMouseDoubleClickInteractiveOverlayEventArgs> MapMouseDoubleClick;
MapMouseWheel¶
This event will be fired when Mouse wheel on the Map.
public event EventHandler<MapMouseWheelInteractiveOverlayEventArgs> MapMouseWheel;
MapMouseLeave¶
Occurs when mouse leave the map canvas.
public event EventHandler<MapMouseLeaveInteractiveOverlayEventArgs> MapMouseLeave;
MapMouseEnter¶
Occurs when mouse enter the map canvas.
public event EventHandler<MapMouseEnterInteractiveOverlayEventArgs> MapMouseEnter;
MapKeyDown¶
Occurs when key down on the map canvas.
public event EventHandler<MapKeyDownInteractiveOverlayEventArgs> MapKeyDown;
MapKeyUp¶
Occurs when key up on the map canvas.
public event EventHandler<MapKeyUpInteractiveOverlayEventArgs> MapKeyUp;
Drawing¶
This event raises before the overlay is drawing.
public event EventHandler<DrawingOverlayEventArgs> Drawing;
Drawn¶
This event raises after the overlay is drawn.
public event EventHandler<DrawnOverlayEventArgs> Drawn;
DrawingAttribution¶
public event EventHandler<DrawingAttributionOverlayEventArgs> DrawingAttribution;
DrawnAttribution¶
public event EventHandler<DrawnAttributionOverlayEventArgs> DrawnAttribution;
ThrowingException¶
Occurs when the overlay catches an exception and allows subscribers to decide whether it should be suppressed.
public event EventHandler<ThrowingExceptionOverlayEventArgs> ThrowingException;
TargetUpdated¶
public event EventHandler<DataTransferEventArgs> TargetUpdated;
SourceUpdated¶
public event EventHandler<DataTransferEventArgs> SourceUpdated;
DataContextChanged¶
public event DependencyPropertyChangedEventHandler DataContextChanged;
RequestBringIntoView¶
public event RequestBringIntoViewEventHandler RequestBringIntoView;
SizeChanged¶
public event SizeChangedEventHandler SizeChanged;
Initialized¶
public event EventHandler Initialized;
Loaded¶
public event RoutedEventHandler Loaded;
Unloaded¶
public event RoutedEventHandler Unloaded;
ToolTipOpening¶
public event ToolTipEventHandler ToolTipOpening;
ToolTipClosing¶
public event ToolTipEventHandler ToolTipClosing;
ContextMenuOpening¶
public event ContextMenuEventHandler ContextMenuOpening;
ContextMenuClosing¶
public event ContextMenuEventHandler ContextMenuClosing;
PreviewMouseDown¶
public event MouseButtonEventHandler PreviewMouseDown;
MouseDown¶
public event MouseButtonEventHandler MouseDown;
PreviewMouseUp¶
public event MouseButtonEventHandler PreviewMouseUp;
MouseUp¶
public event MouseButtonEventHandler MouseUp;
PreviewMouseLeftButtonDown¶
public event MouseButtonEventHandler PreviewMouseLeftButtonDown;
MouseLeftButtonDown¶
public event MouseButtonEventHandler MouseLeftButtonDown;
PreviewMouseLeftButtonUp¶
public event MouseButtonEventHandler PreviewMouseLeftButtonUp;
MouseLeftButtonUp¶
public event MouseButtonEventHandler MouseLeftButtonUp;
PreviewMouseRightButtonDown¶
public event MouseButtonEventHandler PreviewMouseRightButtonDown;
MouseRightButtonDown¶
public event MouseButtonEventHandler MouseRightButtonDown;
PreviewMouseRightButtonUp¶
public event MouseButtonEventHandler PreviewMouseRightButtonUp;
MouseRightButtonUp¶
public event MouseButtonEventHandler MouseRightButtonUp;
PreviewMouseMove¶
public event MouseEventHandler PreviewMouseMove;
MouseMove¶
public event MouseEventHandler MouseMove;
PreviewMouseWheel¶
public event MouseWheelEventHandler PreviewMouseWheel;
MouseWheel¶
public event MouseWheelEventHandler MouseWheel;
MouseEnter¶
public event MouseEventHandler MouseEnter;
MouseLeave¶
public event MouseEventHandler MouseLeave;
GotMouseCapture¶
public event MouseEventHandler GotMouseCapture;
LostMouseCapture¶
public event MouseEventHandler LostMouseCapture;
QueryCursor¶
public event QueryCursorEventHandler QueryCursor;
PreviewStylusDown¶
public event StylusDownEventHandler PreviewStylusDown;
StylusDown¶
public event StylusDownEventHandler StylusDown;
PreviewStylusUp¶
public event StylusEventHandler PreviewStylusUp;
StylusUp¶
public event StylusEventHandler StylusUp;
PreviewStylusMove¶
public event StylusEventHandler PreviewStylusMove;
StylusMove¶
public event StylusEventHandler StylusMove;
PreviewStylusInAirMove¶
public event StylusEventHandler PreviewStylusInAirMove;
StylusInAirMove¶
public event StylusEventHandler StylusInAirMove;
StylusEnter¶
public event StylusEventHandler StylusEnter;
StylusLeave¶
public event StylusEventHandler StylusLeave;
PreviewStylusInRange¶
public event StylusEventHandler PreviewStylusInRange;
StylusInRange¶
public event StylusEventHandler StylusInRange;
PreviewStylusOutOfRange¶
public event StylusEventHandler PreviewStylusOutOfRange;
StylusOutOfRange¶
public event StylusEventHandler StylusOutOfRange;
PreviewStylusSystemGesture¶
public event StylusSystemGestureEventHandler PreviewStylusSystemGesture;
StylusSystemGesture¶
public event StylusSystemGestureEventHandler StylusSystemGesture;
GotStylusCapture¶
public event StylusEventHandler GotStylusCapture;
LostStylusCapture¶
public event StylusEventHandler LostStylusCapture;
StylusButtonDown¶
public event StylusButtonEventHandler StylusButtonDown;
StylusButtonUp¶
public event StylusButtonEventHandler StylusButtonUp;
PreviewStylusButtonDown¶
public event StylusButtonEventHandler PreviewStylusButtonDown;
PreviewStylusButtonUp¶
public event StylusButtonEventHandler PreviewStylusButtonUp;
PreviewKeyDown¶
public event KeyEventHandler PreviewKeyDown;
KeyDown¶
public event KeyEventHandler KeyDown;
PreviewKeyUp¶
public event KeyEventHandler PreviewKeyUp;
KeyUp¶
public event KeyEventHandler KeyUp;
PreviewGotKeyboardFocus¶
public event KeyboardFocusChangedEventHandler PreviewGotKeyboardFocus;
GotKeyboardFocus¶
public event KeyboardFocusChangedEventHandler GotKeyboardFocus;
PreviewLostKeyboardFocus¶
public event KeyboardFocusChangedEventHandler PreviewLostKeyboardFocus;
LostKeyboardFocus¶
public event KeyboardFocusChangedEventHandler LostKeyboardFocus;
PreviewTextInput¶
public event TextCompositionEventHandler PreviewTextInput;
TextInput¶
public event TextCompositionEventHandler TextInput;
PreviewQueryContinueDrag¶
public event QueryContinueDragEventHandler PreviewQueryContinueDrag;
QueryContinueDrag¶
public event QueryContinueDragEventHandler QueryContinueDrag;
PreviewGiveFeedback¶
public event GiveFeedbackEventHandler PreviewGiveFeedback;
GiveFeedback¶
public event GiveFeedbackEventHandler GiveFeedback;
PreviewDragEnter¶
public event DragEventHandler PreviewDragEnter;
DragEnter¶
public event DragEventHandler DragEnter;
PreviewDragOver¶
public event DragEventHandler PreviewDragOver;
DragOver¶
public event DragEventHandler DragOver;
PreviewDragLeave¶
public event DragEventHandler PreviewDragLeave;
DragLeave¶
public event DragEventHandler DragLeave;
PreviewDrop¶
public event DragEventHandler PreviewDrop;
Drop¶
public event DragEventHandler Drop;
PreviewTouchDown¶
public event EventHandler<TouchEventArgs> PreviewTouchDown;
TouchDown¶
public event EventHandler<TouchEventArgs> TouchDown;
PreviewTouchMove¶
public event EventHandler<TouchEventArgs> PreviewTouchMove;
TouchMove¶
public event EventHandler<TouchEventArgs> TouchMove;
PreviewTouchUp¶
public event EventHandler<TouchEventArgs> PreviewTouchUp;
TouchUp¶
public event EventHandler<TouchEventArgs> TouchUp;
GotTouchCapture¶
public event EventHandler<TouchEventArgs> GotTouchCapture;
LostTouchCapture¶
public event EventHandler<TouchEventArgs> LostTouchCapture;
TouchEnter¶
public event EventHandler<TouchEventArgs> TouchEnter;
TouchLeave¶
public event EventHandler<TouchEventArgs> TouchLeave;
IsMouseDirectlyOverChanged¶
public event DependencyPropertyChangedEventHandler IsMouseDirectlyOverChanged;
IsKeyboardFocusWithinChanged¶
public event DependencyPropertyChangedEventHandler IsKeyboardFocusWithinChanged;
IsMouseCapturedChanged¶
public event DependencyPropertyChangedEventHandler IsMouseCapturedChanged;
IsMouseCaptureWithinChanged¶
public event DependencyPropertyChangedEventHandler IsMouseCaptureWithinChanged;
IsStylusDirectlyOverChanged¶
public event DependencyPropertyChangedEventHandler IsStylusDirectlyOverChanged;
IsStylusCapturedChanged¶
public event DependencyPropertyChangedEventHandler IsStylusCapturedChanged;
IsStylusCaptureWithinChanged¶
public event DependencyPropertyChangedEventHandler IsStylusCaptureWithinChanged;
IsKeyboardFocusedChanged¶
public event DependencyPropertyChangedEventHandler IsKeyboardFocusedChanged;
LayoutUpdated¶
public event EventHandler LayoutUpdated;
GotFocus¶
public event RoutedEventHandler GotFocus;
LostFocus¶
public event RoutedEventHandler LostFocus;
IsEnabledChanged¶
public event DependencyPropertyChangedEventHandler IsEnabledChanged;
IsHitTestVisibleChanged¶
public event DependencyPropertyChangedEventHandler IsHitTestVisibleChanged;
IsVisibleChanged¶
public event DependencyPropertyChangedEventHandler IsVisibleChanged;
FocusableChanged¶
public event DependencyPropertyChangedEventHandler FocusableChanged;
ManipulationStarting¶
public event EventHandler<ManipulationStartingEventArgs> ManipulationStarting;
ManipulationStarted¶
public event EventHandler<ManipulationStartedEventArgs> ManipulationStarted;
ManipulationDelta¶
public event EventHandler<ManipulationDeltaEventArgs> ManipulationDelta;
ManipulationInertiaStarting¶
public event EventHandler<ManipulationInertiaStartingEventArgs> ManipulationInertiaStarting;
ManipulationBoundaryFeedback¶
public event EventHandler<ManipulationBoundaryFeedbackEventArgs> ManipulationBoundaryFeedback;
ManipulationCompleted¶
public event EventHandler<ManipulationCompletedEventArgs> ManipulationCompleted;