private async Task OnAfterInitAsync()
        {
            List <OverlayType> overlayTypes = new List <OverlayType>();

            overlayTypes.Add(OverlayType.Polygon);

            var drawingControlOptions = new DrawingControlOptions()
            {
                Position     = ControlPosition.TopCenter,
                DrawingModes = overlayTypes
            };

            managerOptions = new DrawingManagerOptions()
            {
                Map            = map1.InteropObject,
                PolygonOptions = polygonOptions,
                DrawingMode    = OverlayType.Polygon,
                DrawingControl = true,
                //DrawingControlOptions = drawingControlOptions
            };

            drawingManager = await DrawingManager.CreateAsync(JsRuntime, managerOptions);

            //https://developers.google.com/maps/documentation/javascript/drawinglayer
            await drawingManager.AddListener <OverlayCompleteEvent>("overlaycomplete", (arg) =>
            {
                //Overlay object is JObject with all properties,
                //so need to serialize, extract required info depending on your needs
                var json = arg.Overlay.ToString();
            });
        }
        private async Task OnAfterInitAsync()
        {
            List <OverlayType> overlayTypes = new List <OverlayType>();

            overlayTypes.Add(OverlayType.Polygon);
            overlayTypes.Add(OverlayType.Polyline);
            overlayTypes.Add(OverlayType.Marker);

            var drawingControlOptions = new DrawingControlOptions()
            {
                Position     = ControlPosition.TopCenter,
                DrawingModes = overlayTypes
            };

            managerOptions = new DrawingManagerOptions()
            {
                Map            = map1.InteropObject,
                PolygonOptions = polygonOptions,
                //DrawingMode = OverlayType.Polygon,
                DrawingControl        = true,
                DrawingControlOptions = drawingControlOptions
            };

            drawingManager = await DrawingManager.CreateAsync(JsRuntime, managerOptions);

            //https://developers.google.com/maps/documentation/javascript/drawinglayer
            await drawingManager.AddOverlayCompleteListener(async (overComplete) =>
            {
                if (overComplete.Type == OverlayType.Polygon)
                {
                    var poly     = overComplete.Polygon;
                    var polyPath = await poly.GetPath();
                    await poly.SetOptions(new PolygonOptions()
                    {
                        FillColor = "blue",
                        Editable  = false,
                        Draggable = false
                    });
                }
            });
        }