C# Bing Maps SDK 非常慢

C# Bing Maps SDK is painfully slow

我在 .NET Core 3.1 WPF 应用程序中使用最新的 Bing Maps SDK。每当我绘制大量线条(几千条)时,它就会变得非常缓慢,甚至不值得使用。在 zoom/pan 更新 UI.

之前,我必须等待大约 10 秒

我是不是遗漏了什么明显的东西?例如在传单中,您可以将首选模式设置为 canvas 并且它会大大加快速度。我希望 Bing Maps SDK 也有类似的东西。如果可用,我会很乐意接受 Bing Maps SDK 的免费替代品。

<m:Map x:Name="mMap" CredentialsProvider="[Removed]"  Center="54.059388,-1.742378" ZoomLevel="6" />

foreach (var loc in locations)
{

    MapPolyline pl = new MapPolyline();
    pl.Locations = new LocationCollection();
    pl.Stroke = Brushes.Green;

    pl.Locations.Add(new Location(loc.Origin.Lat, loc.Origin.Lon));
    pl.Locations.Add(new Location(loc.Destination.Lat, loc.Destination.Lon));
    mMap.Children.Add(pl);
}

您似乎在使用较旧的 WPF 地图控件。该控件使用 XAML UI 元素来绘制地图 canvas 项目,如折线。 XAML UI 元素对于大量对象的表现不佳。您应该看看 UWP 地图控件是否适合您。

Maps and location overview

这是专为 UWP 应用程序设计的最新地图控件,但如果需要,可以通过 XAML 岛将其托管在 WPF 应用程序中。对于大量地图注释,它应该表现得更好,因为它不使用 XAML UI 元素。