public void OnStyleLoaded(Sdk.Maps.Style style) { if (rendererReference.TryGetTarget(out var renderer)) { var options = new MapSnapshotter.Options( renderer.Control.MeasuredWidth, renderer.Control.MeasuredHeight ).WithRegion( renderer.map.Projection.VisibleRegion.LatLngBounds ).WithStyle(style.Url); var mapSnapshotter = new MapSnapshotter(renderer.Context, options); mapSnapshotter.Start(new GetStyleSnapshotReadyCallback(tcs)); } else { tcs.TrySetCanceled(); } }
public void OnStyleLoaded(Sdk.Maps.Style p0) { if (_rendererReference.TryGetTarget(out var renderer)) { renderer.mapStyle = p0; var mapStyle = renderer.Element.MapStyle ?? new MapStyle(); mapStyle.UrlString = p0.Uri; renderer.Element.MapStyle = mapStyle; renderer.Element.Functions = renderer; renderer.Element.DidFinishLoadingStyleCommand?.Execute(renderer.Element.MapStyle); renderer.AddAnnotations(renderer.Element.Annotations?.ToArray()); if (renderer.Element.Annotations is INotifyCollectionChanged notifyCollection) { notifyCollection.CollectionChanged -= renderer.OnAnnotationsCollectionChanged; notifyCollection.CollectionChanged += renderer.OnAnnotationsCollectionChanged; } renderer.Element.AnnotationsChanged -= renderer.Element_AnnotationsChanged; renderer.Element.AnnotationsChanged += renderer.Element_AnnotationsChanged; } }