5
È possibile utilizzare un DataTrigger per impostare l'angolo di un RotateTransform in WPF? Se é cosi, come?WPF RotateTransform DataTrigger
È possibile utilizzare un DataTrigger per impostare l'angolo di un RotateTransform in WPF? Se é cosi, come?WPF RotateTransform DataTrigger
Certo, qualcosa di simile a questo dovrebbe funzionare
<TextBox>
<TextBox.Style>
<Style TargetType="TextBox">
<Style.Triggers>
<DataTrigger Binding="{Binding RelativeSource={RelativeSource Self}, Path=Text}"
Value="RotateMe">
<Setter Property="LayoutTransform">
<Setter.Value>
<RotateTransform Angle="45"/>
</Setter.Value>
</Setter>
</DataTrigger>
</Style.Triggers>
</Style>
</TextBox.Style>
</TextBox>
In alternativa, se si dispone già di un set LayoutTransform
, è possibile utilizzare EnterActions
e ExitActions
del DataTrigger
<TextBox>
<TextBox.LayoutTransform>
<RotateTransform Angle="0"/>
</TextBox.LayoutTransform>
<TextBox.Style>
<Style TargetType="TextBox">
<Style.Triggers>
<DataTrigger Binding="{Binding RelativeSource={RelativeSource Self}, Path=Text}"
Value="RotateMe">
<DataTrigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Duration="0:0:0"
To="45"
Storyboard.TargetProperty="(LayoutTransform).(RotateTransform.Angle)"/>
</Storyboard>
</BeginStoryboard>
</DataTrigger.EnterActions>
<DataTrigger.ExitActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Duration="0:0:0"
To="0"
Storyboard.TargetProperty="(LayoutTransform).(RotateTransform.Angle)"/>
</Storyboard>
</BeginStoryboard>
</DataTrigger.ExitActions>
</DataTrigger>
</Style.Triggers>
</Style>
</TextBox.Style>
</TextBox>