Я пытаюсь создать USerControl, который содержит GMapControl.Когда я размещаю GMapControl непосредственно в форме, он работает как положено.Однако, если я помещаю GMapControl в UserControl, а затем добавляю этот UserControl в форму, я получаю ошибки.
Например:
My UserControl, Map.cs:
public Map()
{
InitializeComponent();
gMapControl1.MapProvider = GMapProviders.OpenStreetMap;
gMapControl1.Position = new PointLatLng(54.6961334816182, 25.2985095977783);
gMapControl1.MinZoom = 1;
gMapControl1.MaxZoom = 24;
gMapControl1.Zoom = 9;
top = new GMapOverlay("1");
objects = new GMapOverlay("objects");
routes = new GMapOverlay("routes");
polygons = new GMapOverlay("polygons");
gMapControl1.Overlays.Add(routes);
gMapControl1.Overlays.Add(polygons);
gMapControl1.Overlays.Add(objects);
gMapControl1.Overlays.Add(top);
gMapControl1.OnMarkerClick += new MarkerClick(gMapControl1_OnMarkerClick);
gMapControl1.OnPolygonClick += new PolygonClick(gMapControl1_OnPolygonClick);
}
Затем я добавляю этот UserControl в форму, перетаскивая его туда.Затем я получаю исключение:
Не удалось создать компонент «Карта».Сообщение об ошибке выглядит следующим образом: «System.MissingMethodException: метод не найден:« Void GMap.NET.WindowsForms.GMapControl.set_MapProvider (GMap.NET, MapProviders.GMapProvider) ».at OpenStreetMapTest.Map..ctor () '
Если у меня тот же код, что и на карте UserControl внутри формы, то ошибок нет.Кроме того, set_MapProvider существует и работает, если я не помещаю GMapControl в UserControl.
Есть идеи?