Вы не сможете использовать свойство Text
таким образом. Явная установка свойства Text
для любого TextBox
, имеющего этот стиль, переопределит установщик Text
в триггере (как вы заметили).
Если вам нужно очистить только TextBox
, а не свойство, к которому он привязан, то в качестве обходного пути можно использовать присоединенное свойство (или Tag
) для текста, к которому вы привязываете Text
в Style
.
Пример ..
<Style TargetType="{x:Type TextBox}" x:Key="style1">
<Setter Property="Text" Value="{Binding RelativeSource={RelativeSource Self},
Path=Tag}"/>
<Style.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Text" Value="{x:Null}" />
</Trigger>
</Style.Triggers>
</Style>
Тогда TextBox
может использовать это Style
как
<TextBox Style="{StaticResource style1}" Tag="{Binding SomeProperty}" />