OfflineMapPackage Класс

Определение

Представляет данные карты для определенного географического региона. Данные можно скачать и использовать в автономном режиме.

public ref class OfflineMapPackage sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 262144)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class OfflineMapPackage final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 262144)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class OfflineMapPackage
Public NotInheritable Class OfflineMapPackage
Наследование
Object Platform::Object IInspectable OfflineMapPackage
Атрибуты

Требования к Windows

Семейство устройств
Windows 10 Creators Update (появилось в 10.0.15063.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v4.0)

Примеры

В следующем примере выполняется поиск пакетов карты с помощью географического расположения. Если пакет карты ранее не был скачан в локальную систему, этот код асинхронно загружает эту карту.

Примечание

Точки, расположенные рядом с границей или большими прямоугольниками и кругами, могут возвращать несколько совпадений пакетов карт.

private async Task getMapPackages()
{
    Geopoint myPoint = new Geopoint(new BasicGeoposition()
    {
        //Geopoint for Seattle
        Latitude = 47.604,
        Longitude = -122.329
    });

    var queryResult = await OfflineMapPackage.FindPackagesAsync(myPoint);

    if (queryResult.Status == OfflineMapPackageQueryStatus.Success)
    {
        foreach (OfflineMapPackage package in queryResult.Packages)
        {
            if (package.Status != OfflineMapPackageStatus.Downloaded)
            {
                var downloadRequestResult = await package.RequestStartDownloadAsync();

                if (downloadRequestResult.Status == OfflineMapPackageStartDownloadStatus.Success)
                {
                    // do something with the offline map package.
                }
            }
        }
    }
}

Комментарии

Используйте этот класс для асинхронного поиска пакетов карт, которые вас интересуют, используя автономный режим. Вы можете проверка состояние пакетов, чтобы определить, существуют ли эти пакеты в локальной системе. В противном случае их можно асинхронно скачать в систему.

Затем вы можете получить доступ к этим данным в системных элементах управления, таких как MapControl, и из других объектов в пространстве имен Windows.Services.Maps .

Свойства

DisplayName

Возвращает отображаемое имя географического расположения для автономного пакета карты.

EnclosingRegionName

Возвращает окружающую или содержащую область автономного пакета карты (например, США).

EstimatedSizeInBytes

Возвращает предполагаемый размер пакета автономной карты в байтах.

Status

Возвращает состояние пакета карты (например, скачан ли пакет в локальную систему или нет).

Методы

FindPackagesAsync(Geopoint)

Запускает асинхронную операцию для поиска пакета карты, содержащего данные карты для указанного географического расположения.

FindPackagesInBoundingBoxAsync(GeoboundingBox)

Запускает асинхронную операцию для поиска пакета карты, содержащего данные карты для указанной четырехсторонним географической области.

FindPackagesInGeocircleAsync(Geocircle)

Запускает асинхронную операцию по поиску пакета карты, содержащего данные карты для указанной географической области.

RequestStartDownloadAsync()

Запускает асинхронную операцию для запроса загрузки пакета карты в локальную систему.

События

StatusChanged

Происходит при изменении состояния OfflineMapPackageQueryResult .

Применяется к