¿Cómo hacer agregar una animación de entrada / salida gradual basada en el valor de la propiedad de ViewModel?

tengo unViewModel que expone la propiedad de cadenaPageToolBarVisible que puede sercierto ofalso:

private string _pageToolBarVisible;
public string PageToolBarVisible
{
    get
    {
        return _pageToolBarVisible;
    }

    set
    {
        _pageToolBarVisible = value;
        OnPropertyChanged("PageToolBarVisible");
    }
}

Entonces en miVer tengo estoData Trigger cualmuestra ose esconde la barra de herramientas en consecuencia:

<Style x:Key="PageToolBarStyle" TargetType="Border">
    <Style.Triggers>
        <DataTrigger Binding="{Binding PageToolBarVisible}" Value="false">
            <Setter Property="Visibility" Value="Collapsed"/>
        </DataTrigger>
    </Style.Triggers>
</Style>

<Border Style="{StaticResource PageToolBarStyle}"
    DockPanel.Dock="Bottom" Padding="5 5 5 0" Background="#eee">
    <Grid Background="#eee">
        ...
    </Grid>
</Border>

Como hago ahoraañadir un animación así que eso:

cuando la propiedad ViewModel se cambia deverdadero a falso, lala barra de herramientas se desvanececuando la propiedad ViewModel se cambia defalso a verdadero, lala barra de herramientas se desvanece en

Supongo que debo agregar algo como esto a mi estilo, pero no sé cómo ni dónde:

<BeginStoryboard>
<Storyboard>
    <DoubleAnimation
    Storyboard.TargetName="PageToolBar"
    Storyboard.TargetProperty="(TextBlock.Opacity)"
    From="0.0" To="1.0" Duration="0:0:3"/>
</Storyboard>
</BeginStoryboard>

Respuestas a la pregunta(1)

Su respuesta a la pregunta