Я хочу создать элемент управления с настроенным контентом. Текст внутри должен быть повернут в противоположном направлении, чтобы всегда отображаться вертикально. Для этого мне нужно привязать угол поворота текста к углу поворота предка текста. Как это сделать? Извините за мой английский.Связать ротацию содержимого с вращением предка
0
A
ответ
0
Что-то вроде этого должно работать. Важно обратить направление вращения двумя зеркальными преобразованиями до и после вращения дочернего элемента.
<Grid Background="AliceBlue" Width="200" Height="200"
RenderTransformOrigin="0.5,0.5">
<Grid.RenderTransform>
<RotateTransform Angle="45"/>
</Grid.RenderTransform>
<TextBlock HorizontalAlignment="Center" VerticalAlignment="Center"
Text="Hello" RenderTransformOrigin="0.5,0.5">
<TextBlock.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="-1"/>
<RotateTransform Angle="{Binding RenderTransform.Angle,
RelativeSource={RelativeSource AncestorType=Panel}}"/>
<ScaleTransform ScaleX="-1"/>
</TransformGroup>
</TextBlock.RenderTransform>
</TextBlock>
</Grid>