У меня есть элемент управления текстовым блоком на холсте, который можно перетаскивать по горизонтали вправо правильно, как показано на первом и втором изображении.Текстовое поле на холсте, которое изменилось после поворота
Затем после I угла поворота на 90 градусов применяется к его CompositeTransform, перетаскивая текстовый блок вправо, фактически перемещая его по вертикали вверх, как показано третьим и четвертым изображениями. Что мне не хватает?
public CompositeTransform CurrentTransform = new CompositeTransform();
.....
TextBlock.RenderTransform = CurrentTransform;
....
private double angle;
public double Angle
{
get
{
return angle;
}
set
{
if (angle != value)
{
angle = value;
CurrentTransform.CenterX = 0;
CurrentTransform.CenterY = 0;
CurrentTransform.Rotation = angle;
}
}
}
Перемещение текстового поля обрабатывается внутри
private void CanvasText_ManipulationDelta(object sender, System.Windows.Input.ManipulationDeltaEventArgs e)
{
CurrentTransform.TranslateX += e.DeltaManipulation.Translation.X;
CurrentTransform.TranslateY += e.DeltaManipulation.Translation.Y;
}