Другое отличие состоит в том, что DataTrigger
может быть связан с другим элементом управления, StaticResource и т. Д. И т. Д.
<Style TargetType="TextBox">
<Style.Triggers>
<DataTrigger
Binding="{Binding SomeProperty,
ElementName=someOtherControl"
Value="Derp">
<!-- etc -->
Вы можете проверить только тот экземпляр, на котором установлен стиль, при использовании Trigger
. Например, Trigger
, примененный к кнопке, может проверить значение IsPressed
, но он не сможет проверить (например) Text
значение TextBox
в той же форме, если вы хотите отключите Button
, если TextBox
был пуст.