示例#1
0
        private void SetImage()
        {
            var imageView = this.NativeUIElement as ImageView;

            if (imageView != null && this.Source != null)
            {
                try
                {
                    var drawable = new BitmapDrawable(this.Source.GetBitmap());
                    drawable.SetTargetDensity(this.Context.Resources.DisplayMetrics);
                    imageView.SetImageDrawable(drawable);
                    drawable.Dispose();

                    this.Dispatcher.BeginInvoke(() =>
                    {
                        this.ImageOpened(this, new RoutedEventArgs() { OriginalSource = this });
                    });
                }
                catch (Exception e)
                {
                    this.Dispatcher.BeginInvoke(() =>
                    {
                        this.ImageFailed(this, new ExceptionRoutedEventArgs(e) { ErrorMessage = "Image can not be opened." });
                    });
                }
            }
        }