使用GMAP和OSM在C#代码中只显示地图的一小部分

3
我可以帮助翻译以下内容,涉及到it技术:

我想通过Open Street Map展示地图。

我在Visual Studio 2013中有一段C#代码,使用GMAP和OSM显示地图。

该地图只能显示小部分地区。我认为可以看到指定经纬度的区域地图。

为什么呢?

谢谢。

using System.Windows.Forms;
using GMap.NET.WindowsForms;
using GMap.NET;
using GMap.NET.MapProviders;
using GMap.NET.WindowsForms.Markers;

namespace drawMapByGmap
{
   public partial class Form1 : Form
  {
     GMapOverlay overlayOne;
     String contry;
     public Form1()
     {
         InitializeComponent();
         this.Load += new EventHandler(this.Form1_Load); 

     }

     private void Form1_Load(object sender, EventArgs e)
    {
        mapexplr_Load(sender, e);
    }

    private void mapexplr_Load(object sender, EventArgs e)
    {

        //initialisation de notre map
        gMapControl1.SetPositionByKeywords("Tunisia");
        gMapControl1.MapProvider = GMapProviders.OpenStreetMap;
        gMapControl1.MinZoom = 3;
        gMapControl1.MaxZoom = 17;
        gMapControl1.Zoom = 5;
        gMapControl1.Manager.Mode = AccessMode.ServerAndCache;
        //ajout des overlay
        overlayOne = new GMapOverlay("OverlayOne");
        //ajout de Markers
        overlayOne.Markers.Add(new GMap.NET.WindowsForms.Markers.GMarkerGoogle(new PointLatLng(36.657403, 10.327148), GMarkerGoogleType.blue));
        ////ajout de overlay à la map
        gMapControl1.Overlays.Add(overlayOne);
    }

   }
}

你的代码没有问题,你可能断开了互联网连接吗?你正在使用 AccessMode.ServerAndCache,所以你看到的部分可能来自缓存。 - rdoubleui
1个回答

0

我尝试了你的代码,没有问题,所以你可以尝试将管理模式设置为仅服务器

GMapControl1.Manager.Mode = AccessMode.ServerOnly

请确保您已连接到互联网,这是我的测试图片

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接