WP8地图覆盖超出范围错误

本文关键字:范围 错误 地图 覆盖 WP8 | 更新日期: 2023-09-27 18:15:53

我有以下问题。我写了这个函数来添加一些图像作为图标到我的地图上的Silverlight c#应用程序为Windows Phone 8。

private void SpecialMapIcons()
{
    MapLayer layer = new MapLayer();
    List<string[]> SpecialIcons = new List<string[]>();
    SpecialIcons.Add(new string[] { "icon0.png", "52.5", "13.5" });
    SpecialIcons.Add(new string[] { "icon1.png", "52.4", "13.4" });
    for (int i = 0; i < SpecialIcons.Count; i++)
    {
        string[] Icons = SpecialIcons[i];
        MapOverlay overlay = new MapOverlay()
        {
            GeoCoordinate = new GeoCoordinate(Convert.ToDouble(Icons[1]), Convert.ToDouble(Icons[2])),
            Content = new Image
            {
                Source = new BitmapImage(new Uri("/Assets/icon/" + Icons[0], UriKind.Relative)),
                Width = 50,
                Height = 50,
                VerticalAlignment = VerticalAlignment.Center,
                HorizontalAlignment = HorizontalAlignment.Center
            }
        };
        layer.Add(overlay);
    }
    Map.Layers.Add(layer);
}

在模拟器上,它工作得很好,但在设备上,我总是得到一个超出范围的异常,期望值为-90到90,在我创建覆盖的行:

MapOverlay overlay = new MapOverlay()

我不知道为什么会发生这种情况,或者这个值应该是什么意思。有谁能提示一下如何解决这个问题吗?

WP8地图覆盖超出范围错误

ok,我发现了这个问题,我不知道为什么,但silverlight模拟器可以使用

Convert.ToDouble ()

功能,但设备没有。有:

浮动。System.Globalization.CultureInfo.InvariantCulture Parse ()

函数必须使用