gpt4 book ai didi

设置为黑色时的 WPF 菜单项颜色在禁用时不会更改为灰色

转载 作者:行者123 更新时间:2023-12-04 19:37:51 25 4
gpt4 key购买 nike

当顶部菜单项前景设置为黑色并且背景设置为白色时,XP 和 Windows 7 一切正常。但我们使用的是黑色和白色前景的主菜单栏。这只会在 Windows 7 中导致问题。为什么当您将菜单项前景设置为黑色时,它在禁用时不会变为灰色。

最佳答案

我在使用 Windows XP 和 7 时遇到了同样的问题。

Foreground="Black"属性覆盖作为 IsEnabled 函数的内置样式触发器。

要完成您正在寻找的内容,需要使用 IsEnabled 上的触发器构建您自己的样式。以下代码显示了如何内联执行此操作,尽管您可能希望将 Style 拉入资源部分并在所有菜单项上使用它。

<MenuItem Header="My Item" IsEnabled="{Binding MyItemEnabled}">
<MenuItem.Style>
<Style TargetType="{x:Type MenuItem}">
<Setter Property="Foreground" Value="Black"/>
<Style.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Foreground" Value="Gray"/>
</Trigger>
</Style.Triggers>
</Style>
</MenuItem.Style>
</MenuItem>

关于设置为黑色时的 WPF 菜单项颜色在禁用时不会更改为灰色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2701171/

25 4 0