Как я могу отслеживать от мыши перемещение позиции маркера в gmap.net -что ?
Всем Привет,
У меня есть трек маршрута точек с маркером в каждой координате, и я хотел бы показать всплывающую подсказку, когда я перемещаюсь по определенному маркеру.
Я надеялся получить такое событие, как маркер.OnMouseHover и возврат выбранного gmarkeritem, но это работает только тогда, когда у меня есть только один маркер с istestvisible = true;
Если у кого - то есть идея, это будет действительно полезно.
Заранее Вам большое спасибо.
С уважением.
Мики.
Что я уже пробовал:
Я попробовал следующее:
GMapControl map; GMapMarker currentMarker = new GMapMarker((map.position); currentMarker.IsVisible = true; currentMarker.IsHitTestVisible = true; top.Markers.Add(currentMarker); map.Overlays.Add(top); GMapMarker markerPosition = new GMapMarker(50, 50); new location to mark/pin. markerPosition.IsVisible = true; markerPosition.IsHitTestVisible = true; GMapOverlay top = new GMapOverlay("top"); top.Markers.Add(markerPosition.marker); private void map_OnMarkerEnter(GMapMarker item) { item.ToolTipMode = MarkerTooltipMode.Always; } private void map_OnMarkerLeave(GMapMarker item) { item.ToolTipMode = MarkerTooltipMode.OnMouseOver; }
Только маркер "currentMarker" попадает в ловушку событий, определенных выше.
Те, что были добавлены на лету, не обнаруживаются. Они правильно нарисованы, но их невозможно поймать с помощью наведения мыши / мыши мыши / щелчка мыши.
Я даже пытался использовать такой метод, как этот:
public bool isHitTest(Point pt) { var position = map_.FromLatLngToLocal(point_); var rc = new Rectangle( LocalPosition.X, LocalPosition.Y, rectSize, rectSize); if (rc.Contains(pt)) return true; }