public override void ChangedDragState(MKMapView mapView, MKAnnotationView annotationView, MKAnnotationViewDragState newState, MKAnnotationViewDragState oldState)
        {
            if (annotationView?.Annotation is UnifiedPointAnnotation unifiedPoint)
            {
                switch (newState)
                {
                case MKAnnotationViewDragState.Starting:
                    _renderer.Map.SendPinDragStart(unifiedPoint.Data);
                    break;

                case MKAnnotationViewDragState.Dragging:
                    _renderer.Map.SendPinDragging(unifiedPoint.Data);
                    break;

                case MKAnnotationViewDragState.Ending:
                    _renderer.Map.SendPinDragEnd(unifiedPoint.Data);
                    annotationView.SetDragState(MKAnnotationViewDragState.None, false);
                    break;

                case MKAnnotationViewDragState.Canceling:
                    annotationView.SetDragState(MKAnnotationViewDragState.None, false);
                    break;

                default:
                    break;
                }
                unifiedPoint.Data.Location = new Position(unifiedPoint.Coordinate.Latitude, unifiedPoint.Coordinate.Longitude);
            }
        }
 /// Because we set anView.Draggable = true; we need to also handle the Ending drag event, or else our annotation will forever be "floating" over the map
 public override void ChangedDragState(MKMapView mapView, MKAnnotationView annotationView, MKAnnotationViewDragState newState, MKAnnotationViewDragState oldState)
 {
     switch (newState)
     {
     case MKAnnotationViewDragState.Ending:
         annotationView.SetDragState(MKAnnotationViewDragState.None, false);
         break;
     }
 }
		/// Because we set anView.Draggable = true; we need to also handle the Ending drag event, or else our annotation will forever be "floating" over the map
		public override void ChangedDragState (MKMapView mapView, MKAnnotationView annotationView, MKAnnotationViewDragState newState, MKAnnotationViewDragState oldState)
		{
			switch (newState) {
			case MKAnnotationViewDragState.Ending:
				annotationView.SetDragState (MKAnnotationViewDragState.None, false);
				break;
			}
		}