gpt4 book ai didi

wpf - 使用 ICommand 的按钮不会被禁用?

转载 作者:行者123 更新时间:2023-12-04 18:26:00 25 4
gpt4 key购买 nike

我的 wpf-mvvm 应用程序中有一个按钮控件。

我使用 ICommand 属性(在 viewmodel 中定义)将按钮单击事件绑定(bind)到 viewmodel。

我的 ICommand 实现 (RelayCommand) 有 -> execute 和 canexecute 参数。

即使 CanExecute 为 false...按钮未禁用...当按钮内容为图像时

但是,当按钮内容是文本时......启用/禁用工作正常。

<Button DockPanel.Dock="Top" 
Command="{Binding Path=MoveUpCommand}">
<Button.Content>
<Image Source="/Resources/MoveUpArrow.png"></Image>
</Button.Content>
<Style>
<Style.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Opacity" Value=".5" />
</Trigger>
</Style.Triggers>
</Style>
</Button>

最佳答案

按钮确实被禁用,只是它不影响图像的渲染。您将必须以将图像的不透明度更改为 .5 的样式编写触发器,并且您将获得所需的按钮禁用效果,如下所示:

<Style x:Key="imageButton" TargetType="Button">
<Style.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Opacity" Value=".5" />
</Trigger>
</Style.Triggers>
</Style>

关于wpf - 使用 ICommand 的按钮不会被禁用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4532943/

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