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.");
                }
            }
        }