我无法将路由添加到 GmapControl

I can not Add route to GmapControl

我的项目是 WPF。 使用这些代码部分我正在尝试添加路线:

PointLatLng start = new PointLatLng(34.633440, 50.867821);
PointLatLng end = new PointLatLng(34.618707, 50.844945);
MapRoute route = GoogleMapProvider.Instance.GetRoute(
start, end, false, false, 15);

但是在所有文章中他们都说我必须将创建的路线添加到叠加层。然后将叠加层添加到我的控件中。但是没有要添加的叠加层。 如何将路由添加到我的控件中?

But there is no overlay to add

在您的代码片段中,已创建 MapRoute 实例。我们需要做以下事情:

1. 将路由包装在 GMapRoute 实例中,即 GMapRoute 构造函数 取一组点。

2. 将 GMapRoute 实例添加到覆盖层

3.给GMapControl添加overlay

参考: ADDING THE ROUTE TO THE MAP

--------2016 年 5 月 11 日更新--------

对于 WPF 应用程序,我们必须将路由包装在 GMapRoute 实例中并添加到 GMapControl.Markers:

 RoutingProvider rp = gmap1.MapProvider as RoutingProvider;
 if (rp == null)
 {
            rp = GMapProviders.OpenStreetMap; // use OpenStreetMap if provider does not implement routing
 }

 MapRoute route = rp.GetRoute(start, end, false, false, 15);

 if (route != null)
 {
            GMapRoute mRoute = new GMapRoute(route.Points);
            {
                mRoute.ZIndex = -1;
            }

            gmap1.Markers.Add(mRoute);

            gmap1.ZoomAndCenterMarkers(null);
 }
 else
 {
            System.Diagnostics.Debug.WriteLine("There is no route");
 }

我为您创建了示例,请查看here