protected override void CallManipulationsCore() { if (CropRect.Width > 0 && CropRect.Height > 0) { switch (CropKind) { case ImageCropper.CropKind.Rectangle: Manipulator.CropRect(CropRect); break; case ImageCropper.CropKind.Arc: Manipulator.CropArc(CropRect); break; case ImageCropper.CropKind.None: Manipulator.Reset(); break; default: throw new NotSupportedException($"CropKind {CropKind} is not supported."); } } }