Back to Devexpress

Map Control

wpf-115085-controls-and-libraries-map-control.md

latest17.2 KB
Original Source

Map Control

  • Jun 19, 2025
  • 8 minutes to read

The DevExpress Map Control for WPF (MapControl) allows you to incorporate geographical and Cartesian maps in your applications. You can obtain map data from different sources, be it web services or local files. A wide variety of built-in navigation features help you develop interactive maps.

The image above is created based on the following demo: Map Arrows.

Demos

We have implemented the most popular map scenarios in our demo applications so you can try out our Map Control right now:

Run Demo

Get Started

Follow these tutorials to create your first map applications:

Layers and Overlays

The Map Control uses different types of layers to visualize data on a map. All layers are stored in the Map Control’s Layers collection. You can create and add any number of layers to the map. Assign a data provider to a layer to load data. Each layer type is compatible with specific providers. Supported layers are listed below:

ImageLayerImage layers are used to visualize image tiles, vector tiles, geographical images from web map services, and heatmaps.VectorLayerVector item layers store map vector items such as pushpins, callouts, polygons, lines, and so on. For more information, see the following section: Vector Items.InformationLayerInformation layers are used to show map vector items that the Map Control creates based on data obtained from Geographic Information System services (GIS services). Supported GIS Services are listed in the following document: GIS Data.

See the following help topic for more information about map layers: Layers.

Azure Maps Services

You can load image tiles from the Microsoft Azure Maps imagery service. To receive information from this service, create an AzureMapDataProvider object and assign it to the image layer.

To obtain information from one of the services, you need to create an appropriate data provider and assign it to the corresponding layer (ImageLayer.DataProvider or InformationLayer.DataProvider). The following list contains available providers:

AzureMapDataProviderLoads map images from the Azure Maps data provider.AzureSearchDataProviderAllows you to obtain geo data from the Azure Maps Search service.AzureGeocodeDataProviderAllows you to obtain geo data from the Azure Maps Geocode service.AzureRouteDataProviderAllows you to use the Azure Maps Route service to build a route.AzureTrafficIncidentDataProviderAllows you to communicate with the Azure Maps service to obtain information about traffic incidents and display them on the map.AzureRouteIsochroneDataProviderAllows you to use the Azure Maps service to calculate an isochrone and display it on the map.

A key is required to access data from Azure Maps. See the following topic for information: Create an Azure Maps Account.

Bing Maps Services

The Map Control can retrieve and visualize information from imagery and GIS (routing, geocode, search, and elevation) Bing Maps REST services.

Important

On May 21, 2024, Microsoft announced that Bing Maps for Enterprise and its API will be discontinued. Azure Maps will be a single unified enterprise mapping platform available from Microsoft.

To obtain and display map data from Azure Maps, we implemented the following providers:

For information on how to migrate your app from Bing Maps to Azure Maps, see the following help topic: DevExpress Map Control for WPF: Migrate from Bing Maps to Azure Maps.

If you already have a Bing Maps for Enterprise license, you can keep using the current API. You must transition to the new API by June 30, 2025 (for free/basic licenses) or June 30, 2028 (for enterprise licenses). New licenses will no longer be available after June 30, 2025. Bing Maps will not work with our map controls without a license after that date.

OpenStreetMap Services

You can load image tiles from the OpenStreetMap imagery service, and obtain GIS data from search and geocode services. To receive information from one of the services, you need to create an appropriate data provider and assign it to the corresponding layer. The following list contains available providers:

OpenStreetMapDataProviderAllows you to obtain raster image tiles.OsmGeocodeDataProviderAllows you to get geographical coordinates for a location by its address.OsmSearchDataProviderAllows you to search for locations by the specified address or keyword.

The image above is created based on the following demo: OpenStreetMap Provider.

Web Map Services

Web Map Services (WMS) allow you to receive geographical data images from a map server. For more information, refer to the following help topic: Web Map Service Provider.

The image above is created based on the following demo: Web Map Service.

Vector Tiles

As an alternative to raster tiles, you can load vector tiles from different sources. When the Map Control is bound to a vector provider, it only downloads shape definitions (geometries) and applies styles on the client side.

MapboxDataProviderLoads vector tile data from Mapbox Service.MbTilesDataProviderLoads vector tiles from an MbTiles database.UriBasedVectorTileDataProviderLoads map data from a set of PBF or MVT files.

Refer to the following topic for more information: Vector Tile Providers

Vector Items

Map vector items are pushpins, callouts, lines, polygons, pies, and other shapes you can display over a map. These items can be created and loaded to the map in different ways:

You can aggregate groups of items into clusters. Also, the Map Control can paint all items on the map based on a condition. To distinguish items, the Map Control can display different types of legends.

The image above is created based on the following demo: Pie Charts.

Runtime Vector Item Editor

The Map Control ships with the Vector Item Editor – a powerful tool that allows users to create new and customize existing vector items. You can also use the Map Editor API to create your own map edit UI. Refer to the following topic for more information: Vector Item Editor.

The image above is created based on the following demo: Map Editor.

Coordinate Systems and Geographical Projections

You can display both geographic and cartesian maps. Geographical maps support different types of projections. You can also display cartesian data over the geographic map.

The image above is created based on the following demo: Map Projections.

Heatmaps

The Map Control can visualize geographical point data on a heatmap layer and supports heatmap customization options such as color gradient, opacity, and data point radius. Refer to the following topic for details: HeatmapProvider.

The image above is created based on the following demo: Heat Map.

If you look for heatmap charts, refer to the following help topic: Heatmap Control.

Measurements

The Map Control allows you to use the Measurement UI and API to measure distances and areas on the map. For more information, see: Measurements

The Map Control also ships with an API that allows you to measure geometric values based on geographical coordinates. You can use this information to develop custom map measurement instruments. Refer to the following help topic for more information: GeoUtils

The image above is created based on the following demo: Map Editor.

Georeferenced Images

Georeferenced images are images embedded into polygons. These images can be zoomed in and out with the entire map.

The image above is created based on the following demo: Geo Shape Image.

Miscellaneous Features

ScrollingUsers can scroll the map to navigate it. The Map Control also supports circular scrolling and allows you to limit the scroll area.ZoomingUsers can click buttons on the navigation panel or rotate the mouse wheel to zoom the map.RotationThe map can be rotated using the mouse or the built-in API.Selection and HighlightingUsers can select and highlight items on a map. You can use the built-in API to respond to user selection actions.Search PanelIf the search functionality is enabled, users can input search queries into the search panel.Mini MapDuplicates the current map at a lower zoom level and allows users to navigate the map.Print and ExportThe map can be printed and exported. The following export formats are supported: SVG, KML, shapefile, raster image, PDF, MHT, RTF, XLS, and XLSX.TooltipsYou can show more details on the selected map item in a tooltip. Tooltips support HTML formatting.

Examples

The following section contains examples of the most popular mapping scenarios: Examples.

See Also

Visual Elements

WPF Map Control: Examples

WPF Map Control