Skip to content

MapTool

Namespace: ThinkGeo.Core

This class represents the base class of map controls.

public abstract class MapTool : System.Windows.Controls.Control, 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

Inheritance Object → DispatcherObject → DependencyObject → Visual → UIElement → FrameworkElement → Control → MapTool
Implements IResource, IAnimatable, IInputElement, IFrameworkInputElement, ISupportInitialize, IHaveResources, IQueryAmbient

Fields

ContentProperty

Identifies the ThinkGeo.UI.Wpf.MapTool.Content dependency property.

public static DependencyProperty ContentProperty;

Properties

Content

This property gets or sets the content of this map tool. It's a DependencyProperty.

public object Content { get; set; }

Property Value

Object

CurrentMap

Gets or sets current map that the mapTool will be drawn on

public MapViewBase CurrentMap { get; set; }

Property Value

MapViewBase

BorderBrush

public Brush BorderBrush { get; set; }

Property Value

Brush

BorderThickness

public Thickness BorderThickness { get; set; }

Property Value

Thickness

Background

public Brush Background { get; set; }

Property Value

Brush

Foreground

public Brush Foreground { get; set; }

Property Value

Brush

FontFamily

public FontFamily FontFamily { get; set; }

Property Value

FontFamily

FontSize

public double FontSize { get; set; }

Property Value

Double

FontStretch

public FontStretch FontStretch { get; set; }

Property Value

FontStretch

FontStyle

public FontStyle FontStyle { get; set; }

Property Value

FontStyle

FontWeight

public FontWeight FontWeight { get; set; }

Property Value

FontWeight

HorizontalContentAlignment

public HorizontalAlignment HorizontalContentAlignment { get; set; }

Property Value

HorizontalAlignment

VerticalContentAlignment

public VerticalAlignment VerticalContentAlignment { get; set; }

Property Value

VerticalAlignment

TabIndex

public int TabIndex { get; set; }

Property Value

Int32

IsTabStop

public bool IsTabStop { get; set; }

Property Value

Boolean

Padding

public Thickness Padding { get; set; }

Property Value

Thickness

Template

public ControlTemplate Template { get; set; }

Property Value

ControlTemplate

Style

public Style Style { get; set; }

Property Value

Style

OverridesDefaultStyle

public bool OverridesDefaultStyle { get; set; }

Property Value

Boolean

UseLayoutRounding

public bool UseLayoutRounding { get; set; }

Property Value

Boolean

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

Object

BindingGroup

public BindingGroup BindingGroup { get; set; }

Property Value

BindingGroup

Language

public XmlLanguage Language { get; set; }

Property Value

XmlLanguage

Name

public string Name { get; set; }

Property Value

String

Tag

public object Tag { get; set; }

Property Value

Object

InputScope

public InputScope InputScope { get; set; }

Property Value

InputScope

ActualWidth

public double ActualWidth { get; }

Property Value

Double

ActualHeight

public double ActualHeight { get; }

Property Value

Double

LayoutTransform

public Transform LayoutTransform { get; set; }

Property Value

Transform

Width

public double Width { get; set; }

Property Value

Double

MinWidth

public double MinWidth { get; set; }

Property Value

Double

MaxWidth

public double MaxWidth { get; set; }

Property Value

Double

Height

public double Height { get; set; }

Property Value

Double

MinHeight

public double MinHeight { get; set; }

Property Value

Double

MaxHeight

public double MaxHeight { get; set; }

Property Value

Double

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

Boolean

IsInitialized

public bool IsInitialized { get; }

Property Value

Boolean

IsLoaded

public bool IsLoaded { get; }

Property Value

Boolean

ToolTip

public object ToolTip { get; set; }

Property Value

Object

ContextMenu

public ContextMenu ContextMenu { get; set; }

Property Value

ContextMenu

Parent

public DependencyObject Parent { get; }

Property Value

DependencyObject

HasAnimatedProperties

public bool HasAnimatedProperties { get; }

Property Value

Boolean

InputBindings

public InputBindingCollection InputBindings { get; }

Property Value

InputBindingCollection

CommandBindings

public CommandBindingCollection CommandBindings { get; }

Property Value

CommandBindingCollection

AllowDrop

public bool AllowDrop { get; set; }

Property Value

Boolean

DesiredSize

public Size DesiredSize { get; }

Property Value

Size

IsMeasureValid

public bool IsMeasureValid { get; }

Property Value

Boolean

IsArrangeValid

public bool IsArrangeValid { get; }

Property Value

Boolean

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

Boolean

IsMouseOver

public bool IsMouseOver { get; }

Property Value

Boolean

IsStylusOver

public bool IsStylusOver { get; }

Property Value

Boolean

IsKeyboardFocusWithin

public bool IsKeyboardFocusWithin { get; }

Property Value

Boolean

IsMouseCaptured

public bool IsMouseCaptured { get; }

Property Value

Boolean

IsMouseCaptureWithin

public bool IsMouseCaptureWithin { get; }

Property Value

Boolean

IsStylusDirectlyOver

public bool IsStylusDirectlyOver { get; }

Property Value

Boolean

IsStylusCaptured

public bool IsStylusCaptured { get; }

Property Value

Boolean

IsStylusCaptureWithin

public bool IsStylusCaptureWithin { get; }

Property Value

Boolean

IsKeyboardFocused

public bool IsKeyboardFocused { get; }

Property Value

Boolean

IsInputMethodEnabled

public bool IsInputMethodEnabled { get; }

Property Value

Boolean

Opacity

public double Opacity { get; set; }

Property Value

Double

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

String

Visibility

public Visibility Visibility { get; set; }

Property Value

Visibility

ClipToBounds

public bool ClipToBounds { get; set; }

Property Value

Boolean

Clip

public Geometry Clip { get; set; }

Property Value

Geometry

SnapsToDevicePixels

public bool SnapsToDevicePixels { get; set; }

Property Value

Boolean

IsFocused

public bool IsFocused { get; }

Property Value

Boolean

IsEnabled

public bool IsEnabled { get; set; }

Property Value

Boolean

IsHitTestVisible

public bool IsHitTestVisible { get; set; }

Property Value

Boolean

IsVisible

public bool IsVisible { get; }

Property Value

Boolean

Focusable

public bool Focusable { get; set; }

Property Value

Boolean

PersistId

public int PersistId { get; }

Property Value

Int32

IsManipulationEnabled

public bool IsManipulationEnabled { get; set; }

Property Value

Boolean

AreAnyTouchesOver

public bool AreAnyTouchesOver { get; }

Property Value

Boolean

AreAnyTouchesDirectlyOver

public bool AreAnyTouchesDirectlyOver { get; }

Property Value

Boolean

AreAnyTouchesCapturedWithin

public bool AreAnyTouchesCapturedWithin { get; }

Property Value

Boolean

AreAnyTouchesCaptured

public bool AreAnyTouchesCaptured { get; }

Property Value

Boolean

TouchesCaptured

public IEnumerable<TouchDevice> TouchesCaptured { get; }

Property Value

IEnumerable<TouchDevice>

TouchesCapturedWithin

public IEnumerable<TouchDevice> TouchesCapturedWithin { get; }

Property Value

IEnumerable<TouchDevice>

TouchesOver

public IEnumerable<TouchDevice> TouchesOver { get; }

Property Value

IEnumerable<TouchDevice>

TouchesDirectlyOver

public IEnumerable<TouchDevice> TouchesDirectlyOver { get; }

Property Value

IEnumerable<TouchDevice>

DependencyObjectType

public DependencyObjectType DependencyObjectType { get; }

Property Value

DependencyObjectType

IsSealed

public bool IsSealed { get; }

Property Value

Boolean

Dispatcher

public Dispatcher Dispatcher { get; }

Property Value

Dispatcher

Methods

Initialize(MapViewBase)

This method initializes map tool.

public void Initialize(MapViewBase mapView)

Parameters

mapView MapViewBase

InitializeCore(MapViewBase)

This method initializes map tool.

protected void InitializeCore(MapViewBase wpfMap)

Parameters

wpfMap MapViewBase

Remarks:

When overriding this method, consider adding map tool onto the map.ToolsGrid panel.

EnabledChangedCore(Boolean)

Occcurs when the Enabled property changes

protected void EnabledChangedCore(bool newValue)

Parameters

newValue Boolean
Indicates whether the visibility of MapTool is set as Visibility.Visible

Finalize()

protected void Finalize()

Events

PreviewMouseDoubleClick

public event MouseButtonEventHandler PreviewMouseDoubleClick;

MouseDoubleClick

public event MouseButtonEventHandler MouseDoubleClick;

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;