private void SetImage(UIImage image) { using ( _imageTrace.WriteEventActivity( TraceProvider.Image_SetImageStart, TraceProvider.Image_SetImageStop, new object[] { this.GetDependencyObjectId() } ) ) { if (MonochromeColor != null) { image = image.AsMonochrome(MonochromeColor.Value); } Image = image; SourceImageSize = image?.Size.ToFoundationSize() ?? default(Size); } SetNeedsLayoutOrDisplay(); if (Image != null) { OnImageOpened(image); } else { OnImageFailed(image); } }