Skip to content

MapView

Namespace: ThinkGeo.UI.WinForms

public class MapView : System.Windows.Forms.Integration.ElementHost, System.ComponentModel.IComponent, System.IDisposable, System.Windows.Forms.ISupportOleDropSource, System.Windows.Forms.IDropTarget, System.ComponentModel.ISynchronizeInvoke, System.Windows.Forms.IWin32Window, System.Windows.Forms.Layout.IArrangedElement, System.Windows.Forms.IBindableComponent, System.Windows.Forms.IKeyboardToolTip, IHandle`1[[Windows.Win32.Foundation.HWND, System.Windows.Forms.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]], Windows.Win32.System.Ole.IOleControl+Interface, Windows.Win32.System.Ole.IOleObject+Interface, Windows.Win32.System.Ole.IOleInPlaceObject+Interface, Windows.Win32.System.Ole.IOleWindow+Interface, Windows.Win32.System.Ole.IOleInPlaceActiveObject+Interface, Windows.Win32.System.Ole.IViewObject+Interface, Windows.Win32.System.Ole.IViewObject2+Interface, Windows.Win32.System.Com.IPersist+Interface, Windows.Win32.System.Com.IPersistStreamInit+Interface, Windows.Win32.System.Ole.IPersistPropertyBag+Interface, Windows.Win32.System.Com.StructuredStorage.IPersistStorage+Interface, Windows.Win32.System.Ole.IQuickActivate+Interface

Inheritance object → MarshalByRefObject → Component → Control → ElementHost → MapView
Implements IComponent, IDisposable, ISupportOleDropSource, IDropTarget, ISynchronizeInvoke, IWin32Window, IArrangedElement, IBindableComponent, IKeyboardToolTip, IHandle<HWND>, Interface, Interface, Interface, Interface, Interface, Interface, Interface, Interface, Interface, Interface, Interface, Interface

Properties

Basemap

Gets or sets the GPU-rendered basemap - the ground every overlay sits on, composited beneath the whole Overlays collection and driven by the map. Setting a new basemap disposes the previous one; the camera (MapView.TiltAngle, tilt gestures) takes effect once one is present. (Available only on the net8 build, where the GPU engine lives.)

public GpuBasemap Basemap { get; set; }

Property Value

GpuBasemap

TiltAngle

Gets or sets the camera tilt (pitch) in degrees, 0 (straight down) to 85. Above 0 the GPU basemap renders the map in perspective. Has no effect until MapView.Basemap is set. (Available only on the net8 build, where the GPU engine lives.)

public double TiltAngle { get; set; }

Property Value

double

IsTiltEnabled

Gets or sets whether the built-in tilt interaction is on: right-drag (or Alt+drag) turns the bearing the way the classic Alt rotate does while vertical movement tilts the camera, and while tilted a left-drag pans by keeping the grabbed ground under the cursor. Only ever acts when a MapView.Basemap is present. Default false, so an existing app keeps its exact mouse behavior until it opts in.

public bool IsTiltEnabled { get; set; }

Property Value

bool

IsHitTestVisible

public bool IsHitTestVisible { get; set; }

Property Value

bool

DefaultAnimationSettings

public MapAnimationSettings DefaultAnimationSettings { get; set; }

Property Value

MapAnimationSettings

MapCursor

public Cursor MapCursor { get; set; }

Property Value

Cursor

IsManipulationEnabled

public bool IsManipulationEnabled { get; set; }

Property Value

bool

MapUnit

Gets or sets the map unit used by the MapControl.

public GeographyUnit MapUnit { get; set; }

Property Value

GeographyUnit

Exceptions

InvalidOperationException
This InvalidOperationException exception will be thrown when you get or set the property in another thread instead of the thread that created the WpfMap.

Remarks:

The MapUnit reflects the data unit.

CurrentExtent

Gets or sets the current extent of the MapControl.

public RectangleShape CurrentExtent { get; set; }

Property Value

RectangleShape

Remarks:

We recommend setting CurrentScale and CenterPoint instead of setting the CurrentExtent if possible. You can do var centerPoint = extent.GetCenterPoint(); var scale = MapUtil.GetScale(MapView.MapUnit, extent, MapView.MapWidth, MapView.MapHeight); to get the center and the scale from a given extent.

BackgroundOverlay

Gets or sets the background overlay.

public BackgroundOverlay BackgroundOverlay { get; set; }

Property Value

BackgroundOverlay

MapFocusMode

Gets or sets the map focus mode.

public MapFocusMode MapFocusMode { get; set; }

Property Value

MapFocusMode

IsRotationEnabled

Gets or sets whether the map accepts a rotation gesture. Default true. Setting it to false leaves MapView.RotationAngle alone no matter what an interactive overlay reports, so a two-finger twist or an Alt-drag has no effect; the angle can still be set in code.

public bool IsRotationEnabled { get; set; }

Property Value

bool

ClickDoubleClickMode

Gets or sets how MapView.MapClick and MapView.MapDoubleClick are raised for a double-click gesture.

public MapClickDoubleClickMode ClickDoubleClickMode { get; set; }

Property Value

MapClickDoubleClickMode

Remarks:

MapClickDoubleClickMode.MutuallyExclusive (default) raises only MapView.MapDoubleClick for a double-click gesture. MapClickDoubleClickMode.RaiseClickThenDoubleClick raises MapView.MapClick (first click), MapView.MapClick (second click), then MapView.MapDoubleClick.

AdornmentOverlay

Gets or sets the adornment overlay in the MapControl.

public AdornmentOverlay AdornmentOverlay { get; set; }

Property Value

AdornmentOverlay

Exceptions

InvalidOperationException
This InvalidOperationException exception will be thrown when you get or set the property in another thread instead of the thread that created the WpfMap.

TrackOverlay

Gets or sets the track overlay in the MapControl.

public TrackInteractiveOverlay TrackOverlay { get; set; }

Property Value

TrackInteractiveOverlay

ExtentOverlay

Gets or sets the extent overlay in the MapControl.

public ExtentInteractiveOverlay ExtentOverlay { get; set; }

Property Value

ExtentInteractiveOverlay

EditOverlay

Gets or sets the edit overlay in the MapControl.

public EditInteractiveOverlay EditOverlay { get; set; }

Property Value

EditInteractiveOverlay

Overlays

This property gets the collection of Overlays in the MapControl.

public GeoCollection<Overlay> Overlays { get; }

Property Value

GeoCollection<Overlay>

Exceptions

InvalidOperationException
This InvalidOperationException exception will be thrown when you get or set the property in another thread instead of the thread that created the WpfMap.

InteractiveOverlays

This property gets the collection of InteractiveOverlays in the MapControl.

public GeoCollection<InteractiveOverlay> InteractiveOverlays { get; }

Property Value

GeoCollection<InteractiveOverlay>

Exceptions

InvalidOperationException
This InvalidOperationException exception will be thrown when you get or set the property in another thread instead of the thread that created the WpfMap.

Remarks:

This property is used when you want to change the default behavior of the InteractiveOverlay or add your own customized InteractiveOverlay.

CancellationTokenSource

Provides a mechanism for canceling ongoing rendering tasks. This property is particularly useful in scenarios where the cancellation token is not directly accessible, such as during certain UI interactions. For instance, a double-click action to zoom on a map triggers rendering without token access, and cancellation can be achieved by invoking this property's Cancel() method.

public CancellationTokenSource CancellationTokenSource { get; set; }

Property Value

CancellationTokenSource

MapTools

Gets a object for simply using MapTools.

public MapTools MapTools { get; }

Property Value

MapTools

CurrentScale

Gets or sets current viewport scale.

public double CurrentScale { get; set; }

Property Value

double

CenterPoint

Get or set the center of the map

public PointShape CenterPoint { get; set; }

Property Value

PointShape

HistoryExtents

The collection of the history extents the maps has been set.

public Collection<RectangleShape> HistoryExtents { get; }

Property Value

Collection<RectangleShape>

HistoryExtentsCurrentIndex

The index of where the CurrentExtent exists in the HistoryExtents

public int HistoryExtentsCurrentIndex { get; }

Property Value

int

ZoomLevelSet

Gets or sets the ZoomLevelSet used by the MapView. This determines the discrete zoom levels that snapping will target (for example, when double‑clicking or using the mouse wheel). Although snapping aligns the map to these levels, it can still stop at any intermediate scale. This property does not affect how overlays cache tiles; to control that, use TileOverlay.TileMatrixSet.

public ZoomLevelSet ZoomLevelSet { get; set; }

Property Value

ZoomLevelSet

Remarks:

This property is obsolete and will be removed in v15.0. Use MapView.ZoomScales instead:

mapView.ZoomScales = zoomLevelSet.GetScales();

ZoomScales

Gets or sets the ZoomScales used by the MapView. This property controls the scales to which the map can snap (for example, when double-clicking or scrolling with the mouse wheel). Note that while the ZoomScales determines the snapping points, the map itself can stop at any scale. This property does not affect how tiles are cached for a TileOverlay; for that, use the TileOverlay.TileMatrixSet property.

public Collection<double> ZoomScales { get; set; }

Property Value

Collection<double>

MapResizeMode

Gets a strategy for changing extent when resizes map control.

public MapResizeMode MapResizeMode { get; set; }

Property Value

MapResizeMode

MaximumScale

This property gets and sets a maximum scale when navigating the map.

When you keep zooming out, and the target scale is bigger than the maximum scale, the zooming operation will be stopped.

public double MaximumScale { get; set; }

Property Value

double

MinimumScale

This property gets and sets a minimum scale when navigating the map.

When you keep zooming in, and the target scale is smaller than the minimum scale, the zooming operation will be stopped.

public double MinimumScale { get; set; }

Property Value

double

RestrictExtent

This property gets or sets an extent to restrict the map navigation.

public RectangleShape RestrictExtent { get; set; }

Property Value

RectangleShape

RotationAngle

public double RotationAngle { get; set; }

Property Value

double

PivotScreenPoint

public ScreenPointF PivotScreenPoint { get; }

Property Value

ScreenPointF

MapWidth

public double MapWidth { get; }

Property Value

double

MapHeight

public double MapHeight { get; }

Property Value

double

AutoSize

public bool AutoSize { get; set; }

Property Value

bool

BackColorTransparent

public bool BackColorTransparent { get; set; }

Property Value

bool

Child

public UIElement Child { get; set; }

Property Value

UIElement

Focused

public bool Focused { get; }

Property Value

bool

HostContainer

public Panel HostContainer { get; }

Property Value

Panel

PropertyMap

public PropertyMap PropertyMap { get; }

Property Value

PropertyMap

AccessibilityObject

public AccessibleObject AccessibilityObject { get; }

Property Value

AccessibleObject

AccessibleDefaultActionDescription

public string AccessibleDefaultActionDescription { get; set; }

Property Value

string

AccessibleDescription

public string AccessibleDescription { get; set; }

Property Value

string

AccessibleName

public string AccessibleName { get; set; }

Property Value

string

AccessibleRole

public AccessibleRole AccessibleRole { get; set; }

Property Value

AccessibleRole

AllowDrop

public bool AllowDrop { get; set; }

Property Value

bool

Anchor

public AnchorStyles Anchor { get; set; }

Property Value

AnchorStyles

AutoScrollOffset

public Point AutoScrollOffset { get; set; }

Property Value

Point

LayoutEngine

public LayoutEngine LayoutEngine { get; }

Property Value

LayoutEngine

DataContext

public object DataContext { get; set; }

Property Value

object

BackColor

public Color BackColor { get; set; }

Property Value

Color

BackgroundImage

public Image BackgroundImage { get; set; }

Property Value

Image

BackgroundImageLayout

public ImageLayout BackgroundImageLayout { get; set; }

Property Value

ImageLayout

BindingContext

public BindingContext BindingContext { get; set; }

Property Value

BindingContext

Bottom

public int Bottom { get; }

Property Value

int

Bounds

public Rectangle Bounds { get; set; }

Property Value

Rectangle

CanFocus

public bool CanFocus { get; }

Property Value

bool

CanSelect

public bool CanSelect { get; }

Property Value

bool

Capture

public bool Capture { get; set; }

Property Value

bool

CausesValidation

public bool CausesValidation { get; set; }

Property Value

bool

ClientRectangle

public Rectangle ClientRectangle { get; }

Property Value

Rectangle

ClientSize

public Size ClientSize { get; set; }

Property Value

Size

CompanyName

public string CompanyName { get; }

Property Value

string

ContainsFocus

public bool ContainsFocus { get; }

Property Value

bool

ContextMenuStrip

public ContextMenuStrip ContextMenuStrip { get; set; }

Property Value

ContextMenuStrip

Controls

public ControlCollection Controls { get; }

Property Value

ControlCollection

Created

public bool Created { get; }

Property Value

bool

Cursor

public Cursor Cursor { get; set; }

Property Value

Cursor

DataBindings

public ControlBindingsCollection DataBindings { get; }

Property Value

ControlBindingsCollection

DeviceDpi

public int DeviceDpi { get; }

Property Value

int

DisplayRectangle

public Rectangle DisplayRectangle { get; }

Property Value

Rectangle

IsDisposed

public bool IsDisposed { get; }

Property Value

bool

Disposing

public bool Disposing { get; }

Property Value

bool

Dock

public DockStyle Dock { get; set; }

Property Value

DockStyle

Enabled

public bool Enabled { get; set; }

Property Value

bool

Font

public Font Font { get; set; }

Property Value

Font

ForeColor

public Color ForeColor { get; set; }

Property Value

Color

Handle

public IntPtr Handle { get; }

Property Value

IntPtr

HasChildren

public bool HasChildren { get; }

Property Value

bool

Height

public int Height { get; set; }

Property Value

int

IsHandleCreated

public bool IsHandleCreated { get; }

Property Value

bool

InvokeRequired

public bool InvokeRequired { get; }

Property Value

bool

IsAccessible

public bool IsAccessible { get; set; }

Property Value

bool

IsAncestorSiteInDesignMode

public bool IsAncestorSiteInDesignMode { get; }

Property Value

bool

IsMirrored

public bool IsMirrored { get; }

Property Value

bool

Left

public int Left { get; set; }

Property Value

int

Location

public Point Location { get; set; }

Property Value

Point

Margin

public Padding Margin { get; set; }

Property Value

Padding

MaximumSize

public Size MaximumSize { get; set; }

Property Value

Size

MinimumSize

public Size MinimumSize { get; set; }

Property Value

Size

Name

public string Name { get; set; }

Property Value

string

Parent

public Control Parent { get; set; }

Property Value

Control

ProductName

public string ProductName { get; }

Property Value

string

ProductVersion

public string ProductVersion { get; }

Property Value

string

RecreatingHandle

public bool RecreatingHandle { get; }

Property Value

bool

Region

public Region Region { get; set; }

Property Value

Region

public int Right { get; }

Property Value

int

RightToLeft

public RightToLeft RightToLeft { get; set; }

Property Value

RightToLeft

Site

public ISite Site { get; set; }

Property Value

ISite

Size

public Size Size { get; set; }

Property Value

Size

TabIndex

public int TabIndex { get; set; }

Property Value

int

TabStop

public bool TabStop { get; set; }

Property Value

bool

Tag

public object Tag { get; set; }

Property Value

object

Text

public string Text { get; set; }

Property Value

string

Top

public int Top { get; set; }

Property Value

int

TopLevelControl

public Control TopLevelControl { get; }

Property Value

Control

UseWaitCursor

public bool UseWaitCursor { get; set; }

Property Value

bool

Visible

public bool Visible { get; set; }

Property Value

bool

Width

public int Width { get; set; }

Property Value

int

WindowTarget

public IWindowTarget WindowTarget { get; set; }

Property Value

IWindowTarget

PreferredSize

public Size PreferredSize { get; }

Property Value

Size

Padding

public Padding Padding { get; set; }

Property Value

Padding

ImeMode

public ImeMode ImeMode { get; set; }

Property Value

ImeMode

Container

public IContainer Container { get; }

Property Value

IContainer

Constructors

MapView()

public MapView()

MapView(int, int)

public MapView(int width, int height)

Parameters

width int

height int

Methods

TiltToAsync(double, int, CancellationToken)

Animates the tilt from its current angle to (clamped to 0..85) over .

public Task TiltToAsync(double degrees, int durationInMilliseconds, CancellationToken cancellationToken)

Parameters

degrees double
The target tilt in degrees.

durationInMilliseconds int
The animation length; 0 or less jumps straight to the target.

cancellationToken CancellationToken
Stops the animation at the angle it reached.

Returns

Task

Exceptions

OperationCanceledException

        Thrown if the animation is canceled, either through
        or because a newer TiltToAsync superseded it.

Remarks:

A newer TiltToAsync supersedes a running one, the way a newer navigation supersedes ZoomToAsync: the earlier call stops at the angle it reached and its task is canceled.

RotateToAsync(double, int, CancellationToken)

Animates the map rotation to over , taking the shortest way around.

public Task RotateToAsync(double degrees, int durationInMilliseconds, CancellationToken cancellationToken)

Parameters

degrees double
The target rotation angle in degrees.

durationInMilliseconds int
The animation length; 0 or less jumps straight to the target.

cancellationToken CancellationToken
Stops the animation at the angle it reached.

Returns

Task

Exceptions

OperationCanceledException

        Thrown if the animation is canceled, either through
        or because a newer RotateToAsync superseded it.

Remarks:

A newer RotateToAsync supersedes a running one, the way a newer navigation supersedes ZoomToAsync: the earlier call stops at the angle it reached and its task is canceled.

ToWorldCoordinate(double, double, double)

Converts a screen point to the point it looks at on a horizontal plane above the ground - the plane a building's third floor or an extrusion's roof sits on. Under a tilted camera the line of sight through a pixel reaches the ground well behind the thing drawn there, so the height says where to stop it. The answer carries that height as its Z. Looking straight down it is the flat answer, Z set.

public PointShape ToWorldCoordinate(double screenX, double screenY, double elevationInMeters)

Parameters

screenX double

screenY double

elevationInMeters double

Returns

PointShape

ToScreenCoordinate(PointShape, double)

Converts a world point sitting above the ground to the screen point it is drawn at, or null when it is behind the camera.

public Nullable<ScreenPointF> ToScreenCoordinate(PointShape worldPoint, double elevationInMeters)

Parameters

worldPoint PointShape

elevationInMeters double

Returns

Nullable<ScreenPointF>

OnResize(EventArgs)

protected void OnResize(EventArgs e)

Parameters

e EventArgs

Returns

void

Dispose(bool)

protected void Dispose(bool disposing)

Parameters

disposing bool

Returns

void

RefreshAsync(OverlayRefreshType, CancellationToken)

Refreshes current map control.

public Task RefreshAsync(OverlayRefreshType refreshType, CancellationToken cancellationToken)

Parameters

refreshType OverlayRefreshType
Indicates where the existing tiles will be refreshed.

cancellationToken CancellationToken

Returns

Task

Remarks:

Refreshes all the existing overlays and map tools. A newer refresh or navigation that starts before this one finishes supersedes it: the returned task then completes without having drawn, and no exception is thrown. The Drawn events are raised only for a draw that ran to completion, so they are the reliable signal that a redraw reached the screen.

RefreshAsync(RectangleShape, OverlayRefreshType, CancellationToken)

public Task RefreshAsync(RectangleShape extent, OverlayRefreshType refreshType, CancellationToken cancellationToken)

Parameters

extent RectangleShape

refreshType OverlayRefreshType

cancellationToken CancellationToken

Returns

Task

RefreshAsync(Overlay, OverlayRefreshType, CancellationToken)

Refreshes a single overlay on the map.

public Task RefreshAsync(Overlay overlay, OverlayRefreshType refreshType, CancellationToken cancellationToken)

Parameters

overlay Overlay
The overlay to redraw.

refreshType OverlayRefreshType
Indicates whether tiles that are already drawn are drawn again.

cancellationToken CancellationToken
The token to monitor the cancellation requests.

Returns

Task

Remarks:

A newer refresh or navigation that starts before this one finishes supersedes it: the returned task then completes without having drawn, and no exception is thrown. The Drawn events are raised only for a draw that ran to completion, so they are the reliable signal that a redraw reached the screen. This is a map-level call. It cancels any draw already in flight on the map, including draws of overlays it was not asked to touch. To redraw a single overlay without disturbing the others, call RefreshAsync on the overlay itself.

RefreshAsync(IEnumerable<Overlay>, OverlayRefreshType, CancellationToken)

Refreshes a specified overlay collection.

public Task RefreshAsync(IEnumerable<Overlay> overlays, OverlayRefreshType refreshType, CancellationToken cancellationToken)

Parameters

overlays IEnumerable<Overlay>
A collection of overlay to be refreshed.

refreshType OverlayRefreshType

cancellationToken CancellationToken

Returns

Task

Remarks:

A newer refresh or navigation that starts before this one finishes supersedes it: the returned task then completes without having drawn, and no exception is thrown. The Drawn events are raised only for a draw that ran to completion, so they are the reliable signal that a redraw reached the screen. This is a map-level call. It cancels any draw already in flight on the map, including draws of overlays it was not asked to touch. To redraw a single overlay without disturbing the others, call RefreshAsync on the overlay itself.

RefreshAsync(RectangleShape, Overlay, OverlayRefreshType, CancellationToken)

public Task RefreshAsync(RectangleShape extent, Overlay overlay, OverlayRefreshType refreshType, CancellationToken cancellationToken)

Parameters

extent RectangleShape

overlay Overlay

refreshType OverlayRefreshType

cancellationToken CancellationToken

Returns

Task

RefreshAsync(RectangleShape, IEnumerable<Overlay>, OverlayRefreshType, CancellationToken)

public Task RefreshAsync(RectangleShape extent, IEnumerable<Overlay> overlays, OverlayRefreshType refreshType, CancellationToken cancellationToken)

Parameters

extent RectangleShape

overlays IEnumerable<Overlay>

refreshType OverlayRefreshType

cancellationToken CancellationToken

Returns

Task

GetSnappedExtent(RectangleShape)

Gets a snapped extent from a specified extent.

public RectangleShape GetSnappedExtent(RectangleShape extent)

Parameters

extent RectangleShape
An extent to be snapped.

Returns

RectangleShape
An extent that is snapped from the provided extent.

Remarks:

The specified extent may not be the exact extent to be displayed in the pre-defined zoom level list. To display properly, the source extent needs to be snapped first.

GetSnappedZoomLevelIndex(RectangleShape)

Gets the snapped zoom level index from the provided world extent.

public int GetSnappedZoomLevelIndex(RectangleShape targetExtent)

Parameters

targetExtent RectangleShape
A world extent to be snapped.

Returns

int
A snapped index in ZoomScales.

GetSnappedZoomLevelIndex(double)

Gets the snapped zoom level index from the provided scale.

public int GetSnappedZoomLevelIndex(double scale)

Parameters

scale double
A scale to be snapped.

Returns

int
A snapped index in ZoomScales.

ZoomInAsync(CancellationToken)

Zooms the map in for one level

public Task ZoomInAsync(CancellationToken cancellationToken)

Parameters

cancellationToken CancellationToken

Returns

Task

Exceptions

TaskCanceledException

        Thrown if the operation is canceled, either through the cancellation token passed to
        this method or because a newer refresh or navigation superseded it.

ZoomInAsync(int, CancellationToken)

Zooms the map in by the provided percentage.

public Task ZoomInAsync(int percentage, CancellationToken cancellationToken)

Parameters

percentage int
A scale to zoom the map in.

cancellationToken CancellationToken

Returns

Task

ZoomIntoCenterAsync(int, Feature, CancellationToken)

Zooms the map in by the provided percentage and locates the map to the center of the provided feature.

public Task ZoomIntoCenterAsync(int percentage, Feature centerFeature, CancellationToken cancellationToken)

Parameters

percentage int
A scale to zoom the map in.

centerFeature Feature
A new center feature of current map.

cancellationToken CancellationToken

Returns

Task

ZoomIntoCenterAsync(int, PointShape, CancellationToken)

Zooms the map in by the provided percentage and locates to the center of the provided feature.

public Task ZoomIntoCenterAsync(int percentage, PointShape worldPoint, CancellationToken cancellationToken)

Parameters

percentage int
A scale to zoom the map in.

worldPoint PointShape
A new center of current map.

cancellationToken CancellationToken

Returns

Task

ZoomIntoCenterAsync(int, ScreenPointF, CancellationToken)

Zooms the map in by the provided percentage and locates to the provided screen point.

public Task ZoomIntoCenterAsync(int percentage, ScreenPointF screenPoint, CancellationToken cancellationToken)

Parameters

percentage int
A scale to zoom the map in.

screenPoint ScreenPointF
A new screen center to locate the map.

cancellationToken CancellationToken

Returns

Task

ZoomIntoCenterAsync(int, float, float, CancellationToken)

Zooms the map in by the provided percentage and locates to the provided screen x and y.

public Task ZoomIntoCenterAsync(int percentage, float screenX, float screenY, CancellationToken cancellationToken)

Parameters

percentage int
A scale to zoom the map in.

screenX float
Screen x to locate the map.

screenY float
Screen y to locate the map.

cancellationToken CancellationToken

Returns

Task

ZoomToAsync(PointShape, double, CancellationToken)

This method zooms current map to a specified position and scale.

public Task ZoomToAsync(PointShape targetWorldCenter, double targetScale, CancellationToken cancellationToken)

Parameters

targetWorldCenter PointShape
A world center to zoom the map to.

targetScale double
A double value indicates the scale to zoom the map to.

cancellationToken CancellationToken
The token to monitor the cancellation requests.

Returns

Task

Exceptions

TaskCanceledException

        Thrown if the operation is canceled, either through the cancellation token passed to
        this method or because a newer refresh or navigation superseded it.

Remarks:

When calling this method, it doesn't refresh existing Tiles on the current map. For example, if using a TileOverlay such as LayerOverlay; a layer style is changed, Refresh method is proper to call.

ZoomToAsync(double, CancellationToken)

This method zooms current map to a specified position and scale.

public Task ZoomToAsync(double targetScale, CancellationToken cancellationToken)

Parameters

targetScale double
A double value indicates the scale to zoom the map to.

cancellationToken CancellationToken
The token to monitor the cancellation requests.

Returns

Task

Exceptions

TaskCanceledException

        Thrown if the operation is canceled, either through the cancellation token passed to
        this method or because a newer refresh or navigation superseded it.

Remarks:

When calling this method, it doesn't refresh existing Tiles on the current map. For example, if using a TileOverlay such as LayerOverlay; a layer style is changed, Refresh method is proper to call.

ZoomToAsync(PointShape, double, double, MapAnimationSettings, CancellationToken)

This method zooms current map to a specified position and scale.

public Task ZoomToAsync(PointShape targetWorldCenter, double targetScale, double rotationAngle, MapAnimationSettings animationSettings, CancellationToken cancellationToken)

Parameters

targetWorldCenter PointShape
A world center to zoom the map to.

targetScale double
A double value indicates the scale to zoom the map to.

rotationAngle double
The target rotation angle.

animationSettings MapAnimationSettings
The animation settings for this method, it will use the DefaultAnimationSettings if not provided

cancellationToken CancellationToken
The token to monitor the cancellation requests.

Returns

Task

Exceptions

TaskCanceledException

        Thrown if the operation is canceled, either through the cancellation token passed to
        this method or because a newer refresh or navigation superseded it.

Remarks:

When calling this method, it doesn't refresh existing Tiles on the current map. For example, if using a TileOverlay such as LayerOverlay; a layer style is changed, Refresh method is proper to call.

ZoomToAsync(PointShape, double, double, CancellationToken)

This method zooms current map to a specified position and scale.

public Task ZoomToAsync(PointShape targetWorldCenter, double targetScale, double rotationAngle, CancellationToken cancellationToken)

Parameters

targetWorldCenter PointShape
A world center to zoom the map to.

targetScale double
A double value indicates the scale to zoom the map to.

rotationAngle double
The target rotation angle.

cancellationToken CancellationToken
The token to monitor the cancellation requests.

Returns

Task

Exceptions

TaskCanceledException

        Thrown if the operation is canceled, either through the cancellation token passed to
        this method or because a newer refresh or navigation superseded it.

Remarks:

When calling this method, it doesn't refresh existing Tiles on the current map. For example, if using a TileOverlay such as LayerOverlay; a layer style is changed, Refresh method is proper to call.

ZoomOutAsync(CancellationToken)

Zooms the map out for one level.

public Task ZoomOutAsync(CancellationToken cancellationToken)

Parameters

cancellationToken CancellationToken

Returns

Task

Exceptions

TaskCanceledException

        Thrown if the operation is canceled, either through the cancellation token passed to
        this method or because a newer refresh or navigation superseded it.

ZoomOutAsync(int, CancellationToken)

Zooms the map out by the provided percentage.

public Task ZoomOutAsync(int percentage, CancellationToken cancellationToken)

Parameters

percentage int
A scale to zoom the map out.

cancellationToken CancellationToken

Returns

Task

ZoomOutToCenterAsync(int, Feature, CancellationToken)

Zooms the map out by the provided percentage and locates map to the center of the provided feature.

public Task ZoomOutToCenterAsync(int percentage, Feature centerFeature, CancellationToken cancellationToken)

Parameters

percentage int
A scale to zoom the map out.

centerFeature Feature
A new center feature of current map.

cancellationToken CancellationToken

Returns

Task

ZoomOutToCenterAsync(int, PointShape, CancellationToken)

Zooms the map out by the provided percentage and locates to the center of the provided feature.

public Task ZoomOutToCenterAsync(int percentage, PointShape worldPoint, CancellationToken cancellationToken)

Parameters

percentage int
A scale to zoom the map out.

worldPoint PointShape
A new center of current map.

cancellationToken CancellationToken

Returns

Task

ZoomOutToCenterAsync(int, ScreenPointF, CancellationToken)

Zooms the map out by the provided percentage and locates to the provided screen point.

public Task ZoomOutToCenterAsync(int percentage, ScreenPointF screenPoint, CancellationToken cancellationToken)

Parameters

percentage int
A scale to zoom the map out.

screenPoint ScreenPointF
A new screen center to locate the map.

cancellationToken CancellationToken

Returns

Task

ZoomOutToCenterAsync(int, float, float, CancellationToken)

Zooms the map out by the provided percentage and locates to the provided screen x and y.

public Task ZoomOutToCenterAsync(int percentage, float screenX, float screenY, CancellationToken cancellationToken)

Parameters

percentage int
A scale to zoom the map out.

screenX float
Screen x to locate the map.

screenY float
Screen y to locate the map.

cancellationToken CancellationToken

Returns

Task

ZoomToScaleAsync(double, CancellationToken)

Zooms the map to a provided scale.

public Task ZoomToScaleAsync(double targetScale, CancellationToken cancellationToken)

Parameters

targetScale double
Target scale to zoom the map.

cancellationToken CancellationToken

Returns

Task

ZoomToScaleAsync(double, ScreenPointF, CancellationToken)

Zooms the map to a provided scale and locates the map by the provided screen offset.

public Task ZoomToScaleAsync(double targetScale, ScreenPointF offsetScreenPoint, CancellationToken cancellationToken)

Parameters

targetScale double
Target scale to zoom the map.

offsetScreenPoint ScreenPointF
An screen offset to locate the map.

cancellationToken CancellationToken

Returns

Task

ZoomToScaleAsync(double, float, float, CancellationToken)

Zooms the map to a provided scale and locates the map by the provided screen offset.

public Task ZoomToScaleAsync(double targetScale, float offsetScreenX, float offsetScreenY, CancellationToken cancellationToken)

Parameters

targetScale double
Target scale to zoom the map.

offsetScreenX float
An screen offset x to locate the map.

offsetScreenY float
An screen offset y to locate the map.

cancellationToken CancellationToken

Returns

Task

FindFeatureLayer(string)

Finds a FeatureLayer by the specified key.

public FeatureLayer FindFeatureLayer(string key)

Parameters

key string
A key of a FeatureLayer which is defined when adding the layer into the LayerOverlay.

Returns

FeatureLayer
A FeatureLayer which is paired with the specified key in the map overlays.

FindRasterLayer(string)

Finds a RasterLayer by the specified key.

public RasterLayer FindRasterLayer(string key)

Parameters

key string
A key of a RasterLayer which is defined when adding the layer into the LayerOverlay.

Returns

RasterLayer
A RasterLayer which is paired with the specified key in the map overlays.

ToWorldCoordinate(double, double)

Converts the provided screen points to world points.

public PointShape ToWorldCoordinate(double screenX, double screenY)

Parameters

screenX double
Screen x to be converted.

screenY double
Screen y to be converted.

Returns

PointShape
A world point that is converted from the provided parameters.

ToWorldCoordinate(PointShape)

Converts the provided screen points to world points.

public PointShape ToWorldCoordinate(PointShape screenCoordinate)

Parameters

screenCoordinate PointShape
Screen point to be converted.

Returns

PointShape
A world point that is converted from the provided parameters.

ToWorldCoordinate(Point)

Converts the provided screen points to world points.

public PointShape ToWorldCoordinate(Point screenCoordinate)

Parameters

screenCoordinate Point
Screen point to be converted.

Returns

PointShape
A world point that is converted from the provided parameters.

ToScreenCoordinate(double, double)

Converts the provided world points to screen points.

public PointShape ToScreenCoordinate(double worldX, double worldY)

Parameters

worldX double
World x to be converted.

worldY double
World y to be converted.

Returns

PointShape
A screen coordinate that is converted.

ToScreenCoordinate(PointShape)

Converts the provided world points to screen points.

public PointShape ToScreenCoordinate(PointShape worldCoordinate)

Parameters

worldCoordinate PointShape
World point to be converted.

Returns

PointShape
A screen coordinate that is converted.

ToScreenCoordinate(Point)

Converts the provided world points to screen points.

public PointShape ToScreenCoordinate(Point worldCoordinate)

Parameters

worldCoordinate Point
World point to be converted.

Returns

PointShape
A screen coordinate that is converted.

PanByDegreesAsync(float, int, CancellationToken)

This function will pan the currentExtent based on an angle and percentage.

public Task PanByDegreesAsync(float degree, int percentage, CancellationToken cancellationToken)

Parameters

degree float
This parameter is the degree (angle) in which you want to pan.

percentage int
This parameter is the percentage by which you want to pan.

cancellationToken CancellationToken

Returns

Task
None.

Exceptions

InvalidOperationException

        This InvalidOperationException exception will be thrown when you get or set the property in another thread instead of the thread that created the WpfMap.

Remarks:

This method will change the current extent by panning according to the angle and percentage specified.

PanByDegreesAndScreenDistanceAsync(double, float, CancellationToken)

This function will pan the currentExtent based on an angle and screen distance.

public Task PanByDegreesAndScreenDistanceAsync(double degree, float screenDistance, CancellationToken cancellationToken)

Parameters

degree double
This parameter is the degree (angle) in which you want to pan. 0 means right, 90 means down.

screenDistance float
The screen Distance in pixel.

cancellationToken CancellationToken
The token to monitor the cancellation requests.

Returns

Task

Exceptions

TaskCanceledException

        Thrown if the operation is canceled, either through the cancellation token passed to
        this method or because a newer refresh or navigation superseded it.

PanByDirectionAsync(PanDirection, int, CancellationToken)

This function will pan the currentExtent based on a direction and percentage.

public Task PanByDirectionAsync(PanDirection panDirection, int percentage, CancellationToken cancellationToken)

Parameters

panDirection PanDirection
This parameter is the direction in which you want to pan.

percentage int
This parameter is the percentage by which you want to pan.

cancellationToken CancellationToken

Returns

Task
None.

Exceptions

InvalidOperationException
This InvalidOperationException exception will be thrown when you get or set the property in another thread instead of the thread that created the WpfMap.

Remarks:

This method will change the current extent by panning according to the direction and percentage specified.

PanByDirectionAndScreenDistanceAsync(PanDirection, float, CancellationToken)

This function pans the currentExtent based on a direction and screen distance.

public Task PanByDirectionAndScreenDistanceAsync(PanDirection panDirection, float screenDistance, CancellationToken cancellationToken)

Parameters

panDirection PanDirection
This parameter is the direction in which you want to pan.

screenDistance float
The screen Distance in pixel.

cancellationToken CancellationToken
The token to monitor the cancellation requests.

Returns

Task

Exceptions

TaskCanceledException

        Thrown if the operation is canceled, either through the cancellation token passed to
        this method or because a newer refresh or navigation superseded it.

PanByOffsetAsync(double, double, CancellationToken)

Pans the map by the provided screen offset.

public Task PanByOffsetAsync(double offsetScreenX, double offsetScreenY, CancellationToken cancellationToken)

Parameters

offsetScreenX double
Screen offset X to be paned.

offsetScreenY double
Screen offset Y to be paned.

cancellationToken CancellationToken

Returns

Task

Exceptions

TaskCanceledException

        Thrown if the operation is canceled, either through the cancellation token passed to
        this method or because a newer refresh or navigation superseded it.

CenterAtAsync(PointShape, CancellationToken)

Locates the map center to the specified world point.

public Task CenterAtAsync(PointShape worldPoint, CancellationToken cancellationToken)

Parameters

worldPoint PointShape
A world point to locate the map.

cancellationToken CancellationToken

Returns

Task

Exceptions

TaskCanceledException

        Thrown if the operation is canceled, either through the cancellation token passed to
        this method or because a newer refresh or navigation superseded it.

CenterAtAsync(ScreenPointF, CancellationToken)

Locates the map center to the specified screen point.

public Task CenterAtAsync(ScreenPointF screenPoint, CancellationToken cancellationToken)

Parameters

screenPoint ScreenPointF
A screen point to locate the map.

cancellationToken CancellationToken

Returns

Task

Exceptions

TaskCanceledException

        Thrown if the operation is canceled, either through the cancellation token passed to
        this method or because a newer refresh or navigation superseded it.

CenterAtAsync(Feature, CancellationToken)

Locates the map center to the center of the specified feature.

public Task CenterAtAsync(Feature centerFeature, CancellationToken cancellationToken)

Parameters

centerFeature Feature
A feature to locates the map center.

cancellationToken CancellationToken

Returns

Task

Exceptions

TaskCanceledException

        Thrown if the operation is canceled, either through the cancellation token passed to
        this method or because a newer refresh or navigation superseded it.

CenterAtAsync(float, float, CancellationToken)

Locates the map center to the center of the specified feature.

public Task CenterAtAsync(float screenX, float screenY, CancellationToken cancellationToken)

Parameters

screenX float
Screen x to locate the map center.

screenY float
Screen y to locate the map center.

cancellationToken CancellationToken

Returns

Task

Exceptions

TaskCanceledException

        Thrown if the operation is canceled, either through the cancellation token passed to
        this method or because a newer refresh or navigation superseded it.

GetVersion()

This static method will be useful when you want to report a bug in a specified version of Map Suite. You can use it to tell ThinkGeo support which version you are trying to use.

public static string GetVersion()

Returns

string

        A string representing the version of the MapSuiteCore and Map Suite Desktop product that you are now
        using.

GetSnapshot(int, int)

Get current map snapshot and scale to the specified width and height

public GeoImage GetSnapshot(int width, int height)

Parameters

width int
GeoImage's Width

height int
GeoImage's Height

Returns

GeoImage

GetSnapshot()

Get current map snapshot

public GeoImage GetSnapshot()

Returns

GeoImage

ToggleMapExtentsAsync(CancellationToken)

Toggles the map between current extent and previous extent.

public Task ToggleMapExtentsAsync(CancellationToken cancellationToken)

Parameters

cancellationToken CancellationToken

Returns

Task

Exceptions

TaskCanceledException

        Thrown if the operation is canceled, either through the cancellation token passed to
        this method or because a newer refresh or navigation superseded it.

ZoomToPreviousExtentAsync(CancellationToken)

Zooms the map to the previous extent.

public Task ZoomToPreviousExtentAsync(CancellationToken cancellationToken)

Parameters

cancellationToken CancellationToken

Returns

Task

Exceptions

TaskCanceledException

        Thrown if the operation is canceled, either through the cancellation token passed to
        this method or because a newer refresh or navigation superseded it.

ZoomToNextExtentAsync(CancellationToken)

Zooms the map to the next extent.

public Task ZoomToNextExtentAsync(CancellationToken cancellationToken)

Parameters

cancellationToken CancellationToken

Returns

Task

Exceptions

TaskCanceledException

        Thrown if the operation is canceled, either through the cancellation token passed to
        this method or because a newer refresh or navigation superseded it.

SaveState()

This method saves map state to a byte array.

public Byte[] SaveState()

Returns

Byte[]
A byte array indicates current map state.

LoadState(Byte[])

This method restore map state back from the specified state.

public void LoadState(Byte[] state)

Parameters

state Byte[]
This parameter indicates the state for restore the map.

Returns

void

OnMapKeyUp(MapKeyUpMapViewEventArgs)

Raises the MapView.MapKeyUp event.

protected void OnMapKeyUp(MapKeyUpMapViewEventArgs e)

Parameters

e MapKeyUpMapViewEventArgs

Returns

void

OnMapKeyDown(MapKeyDownMapViewEventArgs)

Raises the MapView.MapKeyDown event.

protected void OnMapKeyDown(MapKeyDownMapViewEventArgs e)

Parameters

e MapKeyDownMapViewEventArgs

Returns

void

OnMapMouseDown(MapMouseDownMapViewEventArgs)

Raises the MapView.MapMouseDown event.

protected void OnMapMouseDown(MapMouseDownMapViewEventArgs e)

Parameters

e MapMouseDownMapViewEventArgs

Returns

void

OnMapMouseUp(MapMouseUpMapViewEventArgs)

Raises the MapView.MapMouseUp event.

protected void OnMapMouseUp(MapMouseUpMapViewEventArgs e)

Parameters

e MapMouseUpMapViewEventArgs

Returns

void

OnMapMouseWheel(MapMouseWheelMapViewEventArgs)

Raises the MapView.MapMouseWheel event.

protected void OnMapMouseWheel(MapMouseWheelMapViewEventArgs e)

Parameters

e MapMouseWheelMapViewEventArgs

Returns

void

OnMapMouseEnter(MapMouseEnterMapViewEventArgs)

Raises the MapView.MapMouseEnter event.

protected void OnMapMouseEnter(MapMouseEnterMapViewEventArgs e)

Parameters

e MapMouseEnterMapViewEventArgs

Returns

void

OnMapMouseLeave(MapMouseLeaveMapViewEventArgs)

Raises the MapView.MapMouseLeave event.

protected void OnMapMouseLeave(MapMouseLeaveMapViewEventArgs e)

Parameters

e MapMouseLeaveMapViewEventArgs

Returns

void

OnMapMouseMove(MapMouseMoveMapViewEventArgs)

Raises the MapView.MapMouseMove event.

protected void OnMapMouseMove(MapMouseMoveMapViewEventArgs e)

Parameters

e MapMouseMoveMapViewEventArgs
Event data describing the current pointer position and button state.

Returns

void

OnMapClick(MapClickMapViewEventArgs)

Occurs when clicking on the map.

protected void OnMapClick(MapClickMapViewEventArgs e)

Parameters

e MapClickMapViewEventArgs
Event argument for MapClick event.

Returns

void

OnMapTap(MapTapMapViewEventArgs)

Occurs when tapping on the map.

protected void OnMapTap(MapTapMapViewEventArgs e)

Parameters

e MapTapMapViewEventArgs
Event argument for MapTap event.

Returns

void

OnMapDoubleClick(MapClickMapViewEventArgs)

Occurs when double clicking on the map.

protected void OnMapDoubleClick(MapClickMapViewEventArgs e)

Parameters

e MapClickMapViewEventArgs
Event argument for MapDoubleClick event.

Returns

void

OnCurrentExtentChanging(CurrentExtentChangingMapViewEventArgs)

Occurs when map's current extent is changing.

protected void OnCurrentExtentChanging(CurrentExtentChangingMapViewEventArgs e)

Parameters

e CurrentExtentChangingMapViewEventArgs
Event argument for CurrentExtentChanging event.

Returns

void

OnZoomLevelSetChanged(ZoomLevelSetChangedMapViewEventArgs)

Occurs when map's zoom level set is changed.

protected void OnZoomLevelSetChanged(ZoomLevelSetChangedMapViewEventArgs e)

Parameters

e ZoomLevelSetChangedMapViewEventArgs
Event argument for ZoomLevelSetChanged event.

Returns

void

OnCurrentExtentChanged(CurrentExtentChangedMapViewEventArgs)

Occurs when map's current extent is changed.

protected void OnCurrentExtentChanged(CurrentExtentChangedMapViewEventArgs e)

Parameters

e CurrentExtentChangedMapViewEventArgs
Event argument for CurrentExtentChanged event.

Returns

void

OnCurrentScaleChanging(CurrentScaleChangingMapViewEventArgs)

Occurs when map's current scale is changing.

protected void OnCurrentScaleChanging(CurrentScaleChangingMapViewEventArgs e)

Parameters

e CurrentScaleChangingMapViewEventArgs
Event argument for CurrentScaleChanging event.

Returns

void

OnCurrentScaleChanged(CurrentScaleChangedMapViewEventArgs)

Occurs when map's current scale is changed.

protected void OnCurrentScaleChanged(CurrentScaleChangedMapViewEventArgs e)

Parameters

e CurrentScaleChangedMapViewEventArgs
Event argument for CurrentScaleChanged event.

Returns

void

OnZoomScalesChanged(EventArgs)

Raises MapView.ZoomScalesChanged.

protected void OnZoomScalesChanged(EventArgs e)

Parameters

e EventArgs
Event argument for ZoomScalesChanged event.

Returns

void

OnOverlayDrawing(OverlayDrawingMapViewEventArgs)

Occurs when an overlay is drawing.

protected void OnOverlayDrawing(OverlayDrawingMapViewEventArgs e)

Parameters

e OverlayDrawingMapViewEventArgs
Event argument for OverlayDrawing event.

Returns

void

OnOverlayDrawn(OverlayDrawnMapViewEventArgs)

Occurs when an overlay is drawn.

protected void OnOverlayDrawn(OverlayDrawnMapViewEventArgs e)

Parameters

e OverlayDrawnMapViewEventArgs
Event argument for OverlayDrawn event.

Returns

void

OnOverlaysDrawing(OverlaysDrawingMapViewEventArgs)

Occurs when all overlays are drawing.

protected void OnOverlaysDrawing(OverlaysDrawingMapViewEventArgs e)

Parameters

e OverlaysDrawingMapViewEventArgs
Event argument for OverlaysDrawing event.

Returns

void

OnOverlaysDrawn(OverlaysDrawnMapViewEventArgs)

Occurs when overlays are drawn.

protected void OnOverlaysDrawn(OverlaysDrawnMapViewEventArgs e)

Parameters

e OverlaysDrawnMapViewEventArgs
Event argument for OverlaysDrawn event.

Returns

void

OnCurrentExtentChangedInAnimation(CurrentExtentChangedInAnimationMapViewEventArgs)

protected void OnCurrentExtentChangedInAnimation(CurrentExtentChangedInAnimationMapViewEventArgs e)

Parameters

e CurrentExtentChangedInAnimationMapViewEventArgs

Returns

void

OnRotationAngleChanging(RotationAngleChangingMapViewEventArgs)

protected void OnRotationAngleChanging(RotationAngleChangingMapViewEventArgs e)

Parameters

e RotationAngleChangingMapViewEventArgs

Returns

void

Events

DragEnter

public event DragEventHandler DragEnter;

DragOver

public event DragEventHandler DragOver;

DragDrop

public event DragEventHandler DragDrop;

DragLeave

public event EventHandler DragLeave;

MapKeyUp

Occurs when a key is released while the map has focus.

public event EventHandler<MapKeyUpMapViewEventArgs> MapKeyUp;

Remarks:

Fires synchronously on the UI thread before any InteractiveOverlay dispatch; not suppressed by EventBubblingMode.NoBubble. Keys are not gated on map readiness (unlike the mouse events on this type). Contrast with ExtentOverlay.MapKeyUp (per-overlay dispatch, suppressible).

MapKeyDown

Occurs when a key is pressed while the map has focus.

public event EventHandler<MapKeyDownMapViewEventArgs> MapKeyDown;

Remarks:

Same semantics as MapView.MapKeyUp (no map-readiness gate). Contrast with ExtentOverlay.MapKeyDown (per-overlay dispatch, suppressible).

MapMouseDown

Occurs when a mouse button is pressed on the map.

public event EventHandler<MapMouseDownMapViewEventArgs> MapMouseDown;

Remarks:

Fires before any overlay dispatch; not suppressed by NoBubble. Gated on map readiness — skipped while CurrentScale == 0 or CenterPoint == null. Contrast with per-overlay InteractiveOverlay.MapMouseDown.

MapMouseUp

Occurs when a mouse button is released on the map.

public event EventHandler<MapMouseUpMapViewEventArgs> MapMouseUp;

Remarks:

Fires before any overlay dispatch; not suppressed by NoBubble. Gated on map readiness — skipped while CurrentScale == 0 or CenterPoint == null. Contrast with per-overlay InteractiveOverlay.MapMouseUp.

MapMouseWheel

Occurs when the mouse wheel is rotated over the map.

public event EventHandler<MapMouseWheelMapViewEventArgs> MapMouseWheel;

Remarks:

Fires before any overlay dispatch; not suppressed by NoBubble. Gated on map readiness — skipped while CurrentScale == 0 or CenterPoint == null. Contrast with per-overlay InteractiveOverlay.MapMouseWheel.

MapMouseEnter

Occurs when the mouse enters the map.

public event EventHandler<MapMouseEnterMapViewEventArgs> MapMouseEnter;

Remarks:

Fires before any overlay dispatch; not suppressed by NoBubble. Gated on map readiness — skipped while CurrentScale == 0 or CenterPoint == null. Contrast with per-overlay InteractiveOverlay.MapMouseEnter.

MapMouseLeave

Occurs when the mouse leaves the map.

public event EventHandler<MapMouseLeaveMapViewEventArgs> MapMouseLeave;

Remarks:

Fires before any overlay dispatch; not suppressed by NoBubble. Gated on map readiness — skipped while CurrentScale == 0 or CenterPoint == null. Contrast with per-overlay InteractiveOverlay.MapMouseLeave.

MapMouseMove

Occurs every time the mouse moves over the map.

public event EventHandler<MapMouseMoveMapViewEventArgs> MapMouseMove;

Remarks:

Fires synchronously on the UI thread before any InteractiveOverlay dispatch. Not suppressed by any overlay returning EventBubblingMode.NoBubble. Use this for tooltips, status-bar coordinate readouts, hover indicators, and other pure observational UI.

Gated on map readiness — skipped while CurrentScale == 0 or CenterPoint == null, because world coordinates carried in the event args cannot be computed yet.

Contrast with ExtentOverlay.MapMouseMove (on any InteractiveOverlay): that event fires only when overlay dispatch reaches the overlay, and a preceding overlay such as a TrackInteractiveOverlay can suppress it. For a dispatch-independent notification, prefer this event.

MapClick

Occurs when clicking on the map.

public event EventHandler<MapClickMapViewEventArgs> MapClick;

MapTap

Occurs when tapping on the map.

public event EventHandler<MapTapMapViewEventArgs> MapTap;

MapDoubleClick

Occurs when double click on the map.

public event EventHandler<MapClickMapViewEventArgs> MapDoubleClick;

CurrentExtentChanging

Occurs before map's extent is changing.

public event EventHandler<CurrentExtentChangingMapViewEventArgs> CurrentExtentChanging;

ZoomLevelSetChanged

Occurs after map's zoom level set is changed.

public event EventHandler<ZoomLevelSetChangedMapViewEventArgs> ZoomLevelSetChanged;

CurrentExtentChanged

Occurs after map's extent is changed.

public event EventHandler<CurrentExtentChangedMapViewEventArgs> CurrentExtentChanged;

CurrentScaleChanging

Occurs before map's current scale is changing.

public event EventHandler<CurrentScaleChangingMapViewEventArgs> CurrentScaleChanging;

CurrentScaleChanged

Occurs after map's current scale is changed.

public event EventHandler<CurrentScaleChangedMapViewEventArgs> CurrentScaleChanged;

ZoomScalesChanged

Raised when MapView.ZoomScales is replaced, so anything derived from the ladder - the zoom bar's geometry, a caller's own readout - can be rebuilt against the new one.

public event EventHandler ZoomScalesChanged;

OverlayDrawing

Occurs before an overlay is drawing.

public event EventHandler<OverlayDrawingMapViewEventArgs> OverlayDrawing;

OverlayDrawn

Occurs after an overlay is drawn.

public event EventHandler<OverlayDrawnMapViewEventArgs> OverlayDrawn;

OverlaysDrawing

Occurs before all overlays are drawing.

public event EventHandler<OverlaysDrawingMapViewEventArgs> OverlaysDrawing;

OverlaysDrawn

Occurs after all overlays are drawn.

public event EventHandler<OverlaysDrawnMapViewEventArgs> OverlaysDrawn;

CurrentExtentChangedInAnimation

public event EventHandler<CurrentExtentChangedInAnimationMapViewEventArgs> CurrentExtentChangedInAnimation;

RotationAngleChanging

public event EventHandler<RotationAngleChangingMapViewEventArgs> RotationAngleChanging;

BindingContextChanged

public event EventHandler BindingContextChanged;

ChildChanged

public event EventHandler<ChildChangedEventArgs> ChildChanged;

Click

public event EventHandler Click;

ClientSizeChanged

public event EventHandler ClientSizeChanged;

ControlAdded

public event ControlEventHandler ControlAdded;

ControlRemoved

public event ControlEventHandler ControlRemoved;

CursorChanged

public event EventHandler CursorChanged;

DoubleClick

public event EventHandler DoubleClick;

Enter

public event EventHandler Enter;

FontChanged

public event EventHandler FontChanged;

ForeColorChanged

public event EventHandler ForeColorChanged;

GiveFeedback

public event GiveFeedbackEventHandler GiveFeedback;

GotFocus

public event EventHandler GotFocus;

Invalidated

public event InvalidateEventHandler Invalidated;

KeyDown

public event KeyEventHandler KeyDown;

KeyPress

public event KeyPressEventHandler KeyPress;

KeyUp

public event KeyEventHandler KeyUp;

Layout

public event LayoutEventHandler Layout;

Leave

public event EventHandler Leave;

LostFocus

public event EventHandler LostFocus;

MouseCaptureChanged

public event EventHandler MouseCaptureChanged;

MouseClick

public event MouseEventHandler MouseClick;

MouseDoubleClick

public event MouseEventHandler MouseDoubleClick;

MouseDown

public event MouseEventHandler MouseDown;

MouseEnter

public event EventHandler MouseEnter;

MouseHover

public event EventHandler MouseHover;

MouseLeave

public event EventHandler MouseLeave;

MouseMove

public event MouseEventHandler MouseMove;

MouseUp

public event MouseEventHandler MouseUp;

MouseWheel

public event MouseEventHandler MouseWheel;

PaddingChanged

public event EventHandler PaddingChanged;

Paint

public event PaintEventHandler Paint;

PreviewKeyDown

public event PreviewKeyDownEventHandler PreviewKeyDown;

QueryContinueDrag

public event QueryContinueDragEventHandler QueryContinueDrag;

Resize

public event EventHandler Resize;

RightToLeftChanged

public event EventHandler RightToLeftChanged;

SizeChanged

public event EventHandler SizeChanged;

TextChanged

public event EventHandler TextChanged;

AutoSizeChanged

public event EventHandler AutoSizeChanged;

BackColorChanged

public event EventHandler BackColorChanged;

BackgroundImageChanged

public event EventHandler BackgroundImageChanged;

BackgroundImageLayoutChanged

public event EventHandler BackgroundImageLayoutChanged;

CausesValidationChanged

public event EventHandler CausesValidationChanged;

ContextMenuStripChanged

public event EventHandler ContextMenuStripChanged;

DockChanged

public event EventHandler DockChanged;

EnabledChanged

public event EventHandler EnabledChanged;

LocationChanged

public event EventHandler LocationChanged;

MarginChanged

public event EventHandler MarginChanged;

RegionChanged

public event EventHandler RegionChanged;

TabIndexChanged

public event EventHandler TabIndexChanged;

TabStopChanged

public event EventHandler TabStopChanged;

VisibleChanged

public event EventHandler VisibleChanged;

DataContextChanged

public event EventHandler DataContextChanged;

HandleCreated

public event EventHandler HandleCreated;

HandleDestroyed

public event EventHandler HandleDestroyed;

HelpRequested

public event HelpEventHandler HelpRequested;

QueryAccessibilityHelp

public event QueryAccessibilityHelpEventHandler QueryAccessibilityHelp;

DpiChangedBeforeParent

public event EventHandler DpiChangedBeforeParent;

DpiChangedAfterParent

public event EventHandler DpiChangedAfterParent;

Move

public event EventHandler Move;

ChangeUICues

public event UICuesEventHandler ChangeUICues;

StyleChanged

public event EventHandler StyleChanged;

SystemColorsChanged

public event EventHandler SystemColorsChanged;

Validating

public event CancelEventHandler Validating;

Validated

public event EventHandler Validated;

ParentChanged

public event EventHandler ParentChanged;

ImeModeChanged

public event EventHandler ImeModeChanged;

Disposed

public event EventHandler Disposed;