gpt4 book ai didi

c# - 按钮 IsEnabled 触发器不起作用

转载 作者:太空狗 更新时间:2023-10-29 22:09:31 25 4
gpt4 key购买 nike

我有一个 Button 及其样式:

<Button Name="MyBtn" Style="{StaticResource ButtonEnabledStyle}"
IsEnabled="False" Opacity="1" />

<Style x:Key="ButtonEnabledStyle" TargetType="Button">
<Style.Triggers>
<Trigger Property="IsEnabled" Value="True" >
<Setter Property="Opacity" Value="0.1" />
</Trigger>
</Style.Triggers>
</Style>

但是当我启用按钮 (MyBtn.IsEnabled = true) 时,它不会更改其不透明度。为什么?我怎么解决这个问题?谢谢。

最佳答案

在元素上设置的本地值(代码中的 Opacity="1")将始终优先于样式或样式触发值。请看Dependency Property Setting Precedence List .

一个简单的解决方法是在样式上设置默认值:

<Style x:Key="ButtonEnabledStyle" TargetType="Button">
<Setter Property="Opacity" Value="1.0" />
<Style.Triggers>
<Trigger Property="IsEnabled" Value="True" >
<Setter Property="Opacity" Value="0.1" />
</Trigger>
</Style.Triggers>
</Style>

关于c# - 按钮 IsEnabled 触发器不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12494045/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com