MapItem.MouseLeftButtonDown Event
Occurs when the left mouse button is pressed while the mouse pointer is over this element.
Namespace: DevExpress.Xpf.Map
Assembly: DevExpress.Xpf.Map.v18.2.dll
Declaration
Event Data
The MouseLeftButtonDown event's data class is MouseButtonEventArgs. The following properties provide information specific to this event:
Property | Description |
---|---|
ButtonState | Gets the state of the button associated with the event. |
ChangedButton | Gets the button associated with the event. |
ClickCount | Gets the number of times the button was clicked. |
Device | Gets the input device that initiated this event. Inherited from InputEventArgs. |
Handled | Gets or sets a value that indicates the present state of the event handling for a routed event as it travels the route. Inherited from RoutedEventArgs. |
LeftButton | Gets the current state of the left mouse button. Inherited from MouseEventArgs. |
MiddleButton | Gets the current state of the middle mouse button. Inherited from MouseEventArgs. |
MouseDevice | Gets the mouse device associated with this event. Inherited from MouseEventArgs. |
OriginalSource | Gets the original reporting source as determined by pure hit testing, before any possible Source adjustment by a parent class. Inherited from RoutedEventArgs. |
RightButton | Gets the current state of the right mouse button. Inherited from MouseEventArgs. |
RoutedEvent | Gets or sets the RoutedEvent associated with this RoutedEventArgs instance. Inherited from RoutedEventArgs. |
Source | Gets or sets a reference to the object that raised the event. Inherited from RoutedEventArgs. |
StylusDevice | Gets the stylus device associated with this event. Inherited from MouseEventArgs. |
Timestamp | Gets the time when this event occurred. Inherited from InputEventArgs. |
XButton1 | Gets the current state of the first extended mouse button. Inherited from MouseEventArgs. |
XButton2 | Gets the state of the second extended mouse button. Inherited from MouseEventArgs. |
The event data class exposes the following methods:
Method | Description |
---|---|
GetPosition(IInputElement) | Returns the position of the mouse pointer relative to the specified element. Inherited from MouseEventArgs. |
InvokeEventHandler(Delegate, Object) | Invokes event handlers in a type-specific way, which can increase event system efficiency. |
OnSetSource(Object) | When overridden in a derived class, provides a notification callback entry point whenever the value of the Source property of an instance changes. Inherited from RoutedEventArgs. |
Remarks
To get the particular map item being currently processed, see the event’s sender parameter.
Example
This example demonstrates how to calculate a route between several waypoints and change the appearance of a route path using the Microsoft Bing Route web service. To accomplish this, do the following.
- Create an InformationLayer object and add it to the MapControl.Layers collection.
- Create a BingRouteDataProvider object and assign it to the InformationLayer.DataProvider property.
To calculate a route, call the BingRouteDataProvider.CalculateRoute method and pass a list of waypoints as its argument.
Note
The BingRouteDataProvider.CalculateRoute method calculates the route based on less than 265 RouteWaypoint objects.
To customize the route path appearance, handle the InformationDataProviderBase.LayerItemsGenerating event and modify the MapPushpin.Text property of each MapPushpin.
Note that map pushpins for waypoints are generated automatically and the LayerItemsGenerating event occurs because the InformationDataProviderBase.GenerateLayerItems property value is true by default.
Note
If you run the application, and see a window with the following error message: ”The specified Bing Maps key is invalid. To create a developer account, refer to https://www.microsoft.com/en-us/maps/create-a-bing-maps-key”, refer to the following tutorial: How to: Get a Bing Maps Key.
Note
A complete sample project is available at https://github.com/DevExpress-Examples/how-to-connect-a-map-control-to-a-bing-route-web-service-e4159.
Public Sub New()
InitializeComponent()
' Create three waypoints and add them to a route waypoints list.
Dim waypoints As New List(Of RouteWaypoint)()
waypoints.Add(New RouteWaypoint("New York", New GeoPoint(41.145556, -73.995)))
waypoints.Add(New RouteWaypoint("Oklahoma", New GeoPoint(36.131389, -95.937222)))
waypoints.Add(New RouteWaypoint("Las Vegas", New GeoPoint(36.175, -115.136389)))
routeProvider.CalculateRoute(waypoints)
End Sub
Private Sub routeProvider_LayerItemsGenerating(ByVal sender As Object, ByVal args As LayerItemsGeneratingEventArgs)
Dim letter As Char = "A"c
For Each item As MapItem In args.Items
Dim pushpin As MapPushpin = TryCast(item, MapPushpin)
If pushpin IsNot Nothing Then
pushpin.Text = letter.ToString()
letter = ChrW(AscW(letter) + 1)
End If
Next item
End Sub
Related GitHub Examples
The following code snippet (auto-collected from DevExpress Examples) contains a reference to the MouseLeftButtonDown event.
Note
The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.