Windows Phone Bing 地图崩溃



当您加载地图然后移动地图并立即放大时,我的应用程序在模拟器中崩溃。 我尝试了我在互联网上找到的许多不同的灵魂,因为我得到的唯一错误是灾难性故障,没有进一步的信息(没有行号或任何错误信息)


C# 代码

public sealed partial class MapView : MvxWindowsPage
    {
    double lat=0;
    double lon=0;
    Geolocator gl = new Geolocator();
    MapIcon Micon = new MapIcon();
    Geopoint blo;
    public MapView()
    {
        this.InitializeComponent();
        Windows.Phone.UI.Input.HardwareButtons.BackPressed += HardwareButtons_BackPressed;

        GetInitialPosition();
    }
    private MapViewModel ViewModel
    {
        get { return DataContext as MapViewModel; }
    }
    private bool HasViewModel { get { return ViewModel != null; } }
    void HardwareButtons_BackPressed(object sender, Windows.Phone.UI.Input.BackPressedEventArgs e)
    {
        e.Handled = true;
        Windows.Phone.UI.Input.HardwareButtons.BackPressed -= HardwareButtons_BackPressed;
        ViewModel.NavigateFirst();
    }
    async void GetInitialPosition()
    {
        gl.DesiredAccuracyInMeters = 500;
        gl.DesiredAccuracy = PositionAccuracy.Default;
        IAsyncOperation<Geoposition> locationTask = null;
        try
        {
            Geoposition gp = await gl.GetGeopositionAsync(
                maximumAge: TimeSpan.FromMinutes(5),
                timeout: TimeSpan.FromSeconds(10)
                );
            //LatitudeTextBlock.Text = geoposition.Coordinate.Latitude.ToString("0.00");
            //LongitudeTextBlock.Text = geoposition.Coordinate.Longitude.ToString("0.00");
        }
        finally
        {
            DispatcherTimer dt = new DispatcherTimer();
            dt.Interval = new TimeSpan(0, 0, 5);
            dt.Tick += (sender, e) => ProgBar.Visibility = Visibility.Collapsed;
            dt.Tick += (sender, e) => ProgBar.IsEnabled = false;
            dt.Start();
        }
    }
}
}

Xaml:

<views:MvxWindowsPage 
xmlns:Maps="using:Windows.UI.Xaml.Controls.Maps" 
x:Class="Etgarim.Views.MapView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:Etgarim.Views"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:views="using:Cirrious.MvvmCross.WindowsCommon.Views"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Grid>
    <Maps:MapControl x:Name="OmNaMap" MapServiceToken="..."/>
    <!--Visibility="Visible" Center="{Binding blo}"-->
    <ProgressBar x:Name="ProgBar" Height="667"/>
</Grid>

移动地图控件和进度条,使它们不会过度重叠,这应该可以解决问题。

 <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="667"></RowDefinition>
            <RowDefinition Height="*"></RowDefinition>
        </Grid.RowDefinitions>
        <ProgressBar Grid.Row="0" x:Name="ProgBar" />
        <Maps:MapControl Grid.Row="1" x:Name="OmNaMap" MapServiceToken="..."/>
        <!--Visibility="Visible" Center="{Binding blo}"-->
    </Grid>

最新更新