Ответ 1
Вы должны удалить привязку Visibility
в своей сетке и использовать DataTrigger
, которая привязывается к свойству StatusMessageVisibility
. Если вы привязываете видимость сетки, то после ее свертывания она рухнула, и вы не сможете увидеть анимацию.
Кроме того, вместо двух триггеров данных с помощью EnterActions
используйте один триггер данных, который также имеет ExitAction
для сложенного состояния:
<Grid Grid.Row="0" Height="55">
<Grid.Style>
<Style TargetType="Grid">
<Style.Triggers>
<DataTrigger Binding="{Binding StatusMessageVisibility}" Value="Visible">
<DataTrigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Height" From="0" To="55" Duration="0:0:.1" />
</Storyboard>
</BeginStoryboard>
</DataTrigger.EnterActions>
<DataTrigger.ExitActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Height" From="55" To="0" Duration="0:0:0.1" />
</Storyboard>
</BeginStoryboard>
</DataTrigger.ExitActions>
</DataTrigger>
</Style.Triggers>
</Style>
</Grid.Style>
<TextBlock Text="Hi There" />
</Grid>