ho i seguenti stati visivi definito:VisualStateManager non può generare transizioni per ThicknessAnimations
<VisualStateManager.VisualStateGroups>
<VisualStateGroup Name="EditStates">
<VisualStateGroup.Transitions>
<VisualTransition GeneratedDuration="0:0:2"/>
</VisualStateGroup.Transitions>
<VisualState Name="Editing" />
<VisualState Name="Normal">
<Storyboard>
<ThicknessAnimation Storyboard.TargetName="ViewBorder" Storyboard.TargetProperty="Margin" To="0" Duration="0"/>
<DoubleAnimation Storyboard.TargetName="Header" Storyboard.TargetProperty="(FrameworkElement.LayoutTransform).(ScaleTransform.ScaleY)" To="0" Duration="0"/>
<ColorAnimation Storyboard.TargetName="EditBorder" Storyboard.TargetProperty="Background.Color" To="Red" Duration="0"/>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
La multa DoubleAnimation
e ColorAnimation
lavoro, con animazioni di transizione VisualStateManager
generatrici oltre 2 secondi per loro.
Tuttavia, lo ThicknessAnimation
non si anima. Invece si aggancia al valore finale alla fine del periodo di transizione.
C'è un modo per ottenere VisualStateManager
per generare transizioni per esso, o sto per essere costretto a fornire le transizioni manuali?
Ho notato lo stesso. Quando usi visivamente Blend per trascinare un bordo, funziona internamente usando RenderTransform. Modificare un margine a mano ha lo stesso effetto. Immagino sia un bug o una funzionalità non implementata .. – Wouter