Kehren Trigger / DataTrigger zum vorherigen Status zurück, wenn dies in WPF nicht mehr zutrifft?
Beim Lesen überDataTrigger auf MSDN heißt es
Stellt einen Trigger dar, der Eigenschaftswerte anwendet oder Aktionen ausführt, wenn die gebundenen Daten eine bestimmte Bedingung erfüllen.
Es bedeutet
Wenn ein Trigger wahr ist, ändert er den Wert auf den gewünschten Wert.
Aber kann daraus geschlossen werden?
Wenn es nicht mehr wahr ist, wird der Wert auf den vorherigen Wert zurückgesetzt.
Wie ich zu diesem Schluss gekommen bin
Ich tat dies
<Style x:Key="fd" TargetType="SomeControl">
<Setter Property="Control.Template">
<Setter.Value>
<ControlTemplate>
<Button Content="Foo" x:Name="mybutton">
<ControlTemplate.Triggers>
<DataTrigger Binding="{Binding RelativeSource={RelativeSource Self}, Path=FooProperty}"
Value="Collapsed">
<Setter Property="IsEnabled" Value="False" TargetName="mybutton"/>
<Setter Property="Opacity" Value="0.5" TargetName="mybutton"/>
</DataTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
WannFooProperty
wird kollabiert es ändert mybutton'sIsEnabled
zuFalse
undOpacity
zu0.5
Jetzt, wennFooProperty
wird sichtbar es ändert mybutton'sIsEnabled
zuTrue
undOpacity
zu1
obwohl ich keinen auslöser für das zurücksetzen auf vorherige werte geschrieben habe.
Ist dies eine eingebaute Funktion vonDataTrigger
zum vorherigen Wert zurückkehren Wenn es nicht mehr wahr ist?
Wenn ja, gibt es ein Microsoft / MSDN-Dokument, das dies beweist?