New to Telerik Reporting? Start a free 30-day trial

A class used to obtain map tiles from any tile server compliant with Web Map Tile Service protocol.

By default, the GenericTileProvider is initialized using the MapQuest tile server properties.

Definition

Namespace:Telerik.Reporting

Assembly:Telerik.Reporting.dll

Syntax:

C#
public class GenericTileProvider : TileProvider, ITileProvider

Inheritance: objectTileProviderGenericTileProvider

Implements: ITileProvider

Inherited Members TileProvider.TileImageFormat

Example:

The following example demonstrates how to initialize a GenericTileProvider instance:

cs
public void HowToInitializeGenericTileProvider()
{
    //Creating the GenericTileProvider instance
    Telerik.Reporting.GenericTileProvider genericTileProvider1 = new Telerik.Reporting.GenericTileProvider();

    //Setting the attribution text that will be shown at the bottom right corner of the map control.
    genericTileProvider1.Attribution = "Tiles courtesy of MapQuest";

    //Setting the URL to the image file that will be used to download the tile provider logo, if required by the provider's usage policy
    genericTileProvider1.LogoUrl = "http://developer.mapquest.com/content/osm/mq_logo.png";

    //Specifying the URL template that will be used to get the tiles from the tile server.
    genericTileProvider1.UrlTemplate = "http://{subdomain}.mqcdn.com/tiles/1.0.0/map/{zoom}/{x}/{y}.jpg";

    //Adding the subdomains used to distribute the tile requests evenly. They will replace the {subdomain} tag in the UrlTemplate.
    genericTileProvider1.UrlSubdomains.Add("otile1");
    genericTileProvider1.UrlSubdomains.Add("otile2");
    genericTileProvider1.UrlSubdomains.Add("otile3");
    genericTileProvider1.UrlSubdomains.Add("otile4");

    //Assigning the tile provider to the map instance
    this.map.TileProvider = genericTileProvider1;
}
vb
Public Sub HowToInitializeGenericTileProvider()

    'Creating the GenericTileProvider instance

    Dim genericTileProvider1 As New Telerik.Reporting.GenericTileProvider()


    'Setting the attribution text that will be shown at the bottom right corner of the map control.

    genericTileProvider1.Attribution = "Tiles courtesy of MapQuest"


    'Setting the URL to the image file that will be used to download the tile provider logo, if required by the provider's usage policy

    genericTileProvider1.LogoUrl = "http://developer.mapquest.com/content/osm/mq_logo.png"


    'Specifying the URL template that will be used to get the tiles from the tile server.

    genericTileProvider1.UrlTemplate = "http://{subdomain}.mqcdn.com/tiles/1.0.0/map/{zoom}/{x}/{y}.jpg"


    'Adding the subdomains used to distribute the tile requests evenly. They will replace the {subdomain} tag in the UrlTemplate.

    genericTileProvider1.UrlSubdomains.Add("otile1")
    genericTileProvider1.UrlSubdomains.Add("otile2")
    genericTileProvider1.UrlSubdomains.Add("otile3")
    genericTileProvider1.UrlSubdomains.Add("otile4")


    'Assigning the tile provider to the map instance

    Me.map.TileProvider = genericTileProvider1
End Sub    '#End Region End Class 

Constructors

C#
public GenericTileProvider()

Properties

Gets or sets the Attribution property must be set manually according to the tile provider usage policy. This text will be displayed in the lower right corner of the map area.

C#
public string Attribution { get; set; }

LogoUrl

string

Gets or sets the LogoUrl property denotes the URL used to download the tile provider logo, if required by the provider's usage policy. In case the URL points to a valid image, it will be displayed in the lower left corner of the map area.

C#
public string LogoUrl { get; set; }

UrlSubdomains

Collection<string>

Gets a collection of subdomains that will replace the {subdomain} tag in the UrlTemplate. When more than one subdomain is specified, the tile requests will be distributed evenly among the subdomains.

C#
public Collection<string> UrlSubdomains { get; }

For example, for MapQuest Tile server the subdomains are:

otile1, otile2, otile3, otile4

Gets or sets a templated URL that will be used to fetch the tiles from the tile provider. Valid template patterns are {subdomain}, {x}, {y}, {zoom}.

C#
public string UrlTemplate { get; set; }

The UrlTemplate have the following format:

http://{subdomain}.mqcdn.com/tiles/1.0.0/map/{zoom}/{x}/{y}.jpg

The {subdomain} tag marks the place where a subdomain from the UrlSubdomains collection would be placed. This tag is not mandatory, since the selected tile provider may not offer more than one subdomain.

The {zoom} tag will be replaced by the calculated zoom level (level of details) of the current tile set.

The {x} and {y} tags are used as a placeholders for the tile position.

UserAgent

string

Gets or sets the UserAgent header value that will be used when sending requests to the tile provider servers.

C#
public string UserAgent { get; set; }