private async void Button_Click(object sender, RoutedEventArgs e) { bool anyProblem = false; var queryResult = await OfflineMapPackage.FindPackagesAsync(point); 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) { anyProblem = true; } } } if (!anyProblem) { myButton.Visibility = Visibility.Collapsed; myText.Visibility = Visibility.Visible; } } }
protected async override void OnNavigatedTo(NavigationEventArgs e) { myButton.Visibility = Visibility.Collapsed; myText.Visibility = Visibility.Visible; var queryResult = await OfflineMapPackage.FindPackagesAsync(point); if (queryResult.Status == OfflineMapPackageQueryStatus.Success) { foreach (OfflineMapPackage package in queryResult.Packages) { if (package.Status != OfflineMapPackageStatus.Downloaded) { myButton.Visibility = Visibility.Visible; myText.Visibility = Visibility.Collapsed; } } } base.OnNavigatedTo(e); }
/// <summary> /// This method finds all available Offline Map packages at the map center geopoint /// </summary> private async void findAtCenterButton_Click(object sender, RoutedEventArgs e) { resultsGrid.Children.Clear(); resultsGrid.RowDefinitions.Clear(); resultStatusTextBlock.Text = ""; OfflineMapPackageQueryResult result = await OfflineMapPackage.FindPackagesAsync(myMap.Center); if (result.Status != OfflineMapPackageQueryStatus.Success) { resultStatusTextBlock.Text = "Error: " + result.Status; } else if (result.Packages.Count == 0) { resultStatusTextBlock.Text = "No maps found"; } else { foreach (OfflineMapPackage package in result.Packages) { addToResultGrid(package); } } }