Back to Devexpress

How to: Connect a Map Control to the OpenStreetMap Geocode Service

windowsforms-120284-controls-and-libraries-map-control-examples-gis-data-geocoding-how-to-connect-a-map-control-to-the-openstreetmap-geocode-service.md

latest1.9 KB
Original Source

How to: Connect a Map Control to the OpenStreetMap Geocode Service

  • Nov 13, 2018

This example demonstrates how to add an image layer displaying map tiles from the OSM service and an information layer that searches for a place on the map using the OSM search service. It uses the following classes:

ClassDescription
ImageLayerDisplays map images obtained from map image data providers.
OpenStreetMapDataProviderThe class that loads map images from a web resource that provides data in the OpenStreetMap format.
InformationLayerA layer that is used to display additional information above the map.
OsmGeocodeDataProviderProvides the capability to obtain geocode data from the Open Street Map service.
csharp
private void OnFormLoad(object sender, EventArgs e) {
    mapControl.Layers.AddRange(new LayerBase[] {
        new ImageLayer {
            DataProvider = new OpenStreetMapDataProvider() {
                TileUriTemplate = "YOUR_TILE_SERVICE.com/{1}/{2}/{3}"
            }
        },
        new InformationLayer {
            DataProvider = new OsmGeocodeDataProvider()
        }
    });
}
vb
Private Sub OnFormLoad(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
    mapControl.Layers.AddRange(New LayerBase() { _
        New ImageLayer With { _
            .DataProvider = New OpenStreetMapDataProvider() With {.TileUriTemplate = "YOUR_TILE_SERVICE.com/{1}/{2}/{3}"} _
        }, _
        _
        New InformationLayer With {.DataProvider = New OsmGeocodeDataProvider()} _
    })
End Sub