大家好,
我正在创建一个按钮模板以在我的 WPF 应用程序中使用。格式基本上是彩色图块(大多数情况下认为是 Windows Phone 风格。)。
如果我想在鼠标悬停的情况下更改按钮的颜色,我只需编写如下代码(假设原始按钮颜色为灰色):
<Window.Resources>
<Style x:Key="ColorTileButton" TargetType="Button>
<!-- Insert various property editing here. -->
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="LightGray" />
</Trigger>
<Trigger Property="IsMouseOver" Value="False>
<Setter Property="Background" Value="Gray" />
</Trigger>
</ControlTemplate.Triggers>
</Style>
</Window.Resources>
但显然,如果原始按钮颜色是 Firebrick,这将不起作用,因为我最终会得到一堆标准的灰色按钮。所以我想知道是否有办法重写这个按钮模板,这样它只会将 R、G 和 B 的值增加大约 10 以使按钮颜色变浅,然后在鼠标离开时减少。帮帮我?
多谢你们。