Изменение размера пользовательского элемента управления после преобразования вращения
У меня есть пользовательский элемент управления, который рисует график. Новое требование достигнуто, и одна часть решения вращает график. Внутри элемента управления есть и другие изменения, но они относительно простые и не влияют на эту проблему.
Я могу повернуть элемент управления следующим образом:
protected override void OnRender(DrawingContext drawingContext)
{
base.OnRender(drawingContext);
InitStandard();
drawXaxis();
drawYaxis();
drawZAxis();
Titles();
Generate();
drawGridLines();
if (UsedAxisType == AxisType.FloorPlot)
{
gdRootGrid.RenderTransformOrigin = new Point(.5, .5);
gdRootGrid.RenderTransform = new RotateTransform(90);
}
}
Это без проблем вращается - теперь мне нужно изменить ширину и высоту элемента управления, чтобы соответствовать новым размерам, созданным с помощью поворота. Я не могу сделать это здесь, так как установка ширины и высоты элемента управления в этом событии вызывает цикл рендеринга.
Как мне сделать это правильно?
1 ответ
Решение
Пытаться
gdRootGrid.LayoutTransform = new RotateTransform(90);
вместо.