Skip to main content

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

How to: Cache Image Tiles Locally

This example illustrates what actions should be executed to customize the local cache of a map control.

The local cache allows you to save internet resources and significantly increases map performance by loading saved map tiles from the local directory.

To enable the map cache, it is necessary to assign the MapControl.CacheOptions property to the CacheOptions object and specify the directory to which the loaded map tiles will be saved using the CacheOptions.Directory property. It is also necessary to specify the time interval after which map tile images will be updated from a map data provider via the CacheOptions.KeepInterval property.

In this example tile images of a map are loaded from the openstreetmap.org resource.

<Window x:Class="MapCacheOptions.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:dxm="http://schemas.devexpress.com/winfx/2008/xaml/map"
        Title="MainWindow" Height="350" Width="525" >
    <Grid>
        <dxm:MapControl>
            <dxm:MapControl.CacheOptions>
                <dxm:CacheOptions Directory="C://MapTiles" KeepInterval="01:00:00"/>
            </dxm:MapControl.CacheOptions>
            <dxm:ImageTilesLayer >
                <dxm:ImageTilesLayer.DataProvider>
                    <dxm:OpenStreetMapDataProvider Kind="Road" />
                </dxm:ImageTilesLayer.DataProvider>
            </dxm:ImageTilesLayer>
        </dxm:MapControl>
    </Grid>
</Window>
See Also