更新时间:2022-05-30 02:47:58
为什么不将其更改为Trigger?
Why don't you change it to Trigger?
<Style x:Key="MyButtonStyle"
TargetType="Button">
<Style.Triggers>
<Trigger Property="IsEnabled"
Value="False">
<Setter Property="Background"
Value="Purple" />
</Trigger>
<Trigger Property="IsEnabled"
Value="True">
<Setter Property="Background"
Value="Yellow" />
</Trigger>
</Style.Triggers>
</Style>
或者如果您仍要使用它,则无需寻找祖先,因为您当前在按钮上:
Or if you want to use it anyway, you don't need to find an ancestor, because you're currently on the button:
<Style x:Key="MyButtonStyle"
TargetType="Button">
<Style.Triggers>
<DataTrigger Binding="{Binding RelativeSource={RelativeSource Self}, Path=IsEnabled, PresentationTraceSources.TraceLevel=High}"
Value="False">
<Setter Property="Background"
Value="Purple" />
</DataTrigger>
<DataTrigger Binding="{Binding RelativeSource={RelativeSource Self}, Path=IsEnabled, PresentationTraceSources.TraceLevel=High}"
Value="True">
<Setter Property="Background"
Value="Yellow" />
</DataTrigger>
</Style.Triggers>
</Style>
如果没有帮助,您应该提供更多详细信息:原始XAML代码,也许您的View模型的代码也是如此。
If it doesn't help you, you should give more details: Original XAML code and maybe your View Model's code too.