Можно ли изменить границы элемента WPF? - PullRequest
1 голос
/ 18 января 2020

Я создаю Path динамически, и я заметил, что ограничивающая Rect формы намного больше, чем сама траектория, как на рисунке ниже.

enter image description here

Возможно ли изменить эти границы? К сожалению, свойство PathGeometry.Bounds доступно только для чтения.

ps: Если это поможет, мне интересно в сужении границ, чтобы я мог установить RenderTransformOrigin пути к new Point(0.5,0.5), чтобы повернуть (RotateTransform) этот путь вокруг себя.

Создание PathFigure

Я определяю 4 пункта а затем я создаю три LineSegment s и ArcSegment. Я создал Circle структуру для использования в качестве руководства для расчета этих точек.

private PathFigure CreateFigure()
        {
            var lineAB = new LineSegment(pointB, true);
            var arcBC = new ArcSegment(pointC, new Size(_outerCircle.Radius, _outerCircle.Radius), 0, false, SweepDirection.Clockwise, true);
            var lineCD = new LineSegment(pointD, true);

            return new PathFigure(pointA, new List<PathSegment> { lineAB, arcBC, lineCD }, true);
        }

1 Ответ

1 голос
/ 26 января 2020

Поскольку невозможно изменить границы после их определения, добавление Path в качестве дочернего элемента к Grid или Border и установка Path.Stretch="Fill" заставит границы заполняться путем во время макет пропуска.

...