ArcGISRuntimeXamarin.Samples.TakeScreenshot.TakeScreenshot.OnTakeScreenshotClicked C# (CSharp) Метод

OnTakeScreenshotClicked() приватный Метод

private OnTakeScreenshotClicked ( object sender, EventArgs e ) : void
sender object
e System.EventArgs
Результат void
        private async void OnTakeScreenshotClicked(object sender, EventArgs e)
        {
            // Export the image from mapview and assign it to the imageview
            var exportedImage = await MyMapView.ExportImageAsync();

            // Create layout for sublayers page
            // Create root layout
            var layout = new StackLayout();

            var closeButton = new Button
            {
                Text = "Close"
            };
            closeButton.Clicked += CloseButton_Clicked;

            // Create image bitmap by getting stream from the exported image
            var buffer = await exportedImage.GetEncodedBufferAsync();
            byte[] data = new byte[buffer.Length];
            buffer.Read(data, 0, data.Length);
            var bitmap = ImageSource.FromStream(() => new System.IO.MemoryStream(data));
            var image = new Image()
            {
                Source = bitmap,
                Margin = new Thickness(10)
            };

            // Add elements into the layout
            layout.Children.Add(closeButton);
            layout.Children.Add(image);

            // Create internal page for the navigation page
            var screenshotPage = new ContentPage()
            {
                Content = layout,
                Title = "Screenshot"
            };

            // Navigate to the sublayers page
            await Navigation.PushAsync(screenshotPage);
        }