gpt4 book ai didi

C# WPF 样式 : One Button Mouseover - One Button keep Image

转载 作者:行者123 更新时间:2023-12-02 01:09:58 25 4
gpt4 key购买 nike

我有 2 个按钮,其中一个应该在鼠标悬停时更改背景颜色。另一个应该在鼠标悬停时保留他的背景图像。

我的问题是第二个也有鼠标悬停效果,图像被覆盖:(

    <Window.Resources>
<Style x:Key="hover" TargetType="Button">
<Setter Property="Background" Value="#FF2598CE" />
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="#FF24779D" />
</Trigger>
</Style.Triggers>
</Style>
</Window.Resources>

1.按钮

<Button Content="0" Name="num0" Foreground="White" Background="#FF2598CE" BorderBrush="#FF24779D" Style="{StaticResource hover}" />

2.按钮

<Button Content="" Name="up" BorderBrush="#FF24779D">
<Button.Background>
<ImageBrush ImageSource="/Rechner;component/Images/btn_up.jpg" />
</Button.Background>
</Button>

谢谢你的帮助

最佳答案

第二个按钮的默认模板意味着它的行为类似于 Windows 按钮(例如,鼠标悬停时不显示背景图像)。您可能需要提供自己的模板。

另一个question里面有很好的解释这可能会帮助您入门。

This也可能有帮助。

我可能会做这样的事情:

<Button Content="" Name="up" Template="{DynamicResource BackgroundButton}" >
<Button.Background>
<ImageBrush ImageSource="image.png" />
</Button.Background>
<Button.Resources>
<ControlTemplate x:Key="BackgroundButton" TargetType="Button">
<Border Name="border" BorderThickness="1" BorderBrush="Black" Background="{TemplateBinding Background}">
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" />
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" TargetName="border">
<Setter.Value>
<ImageBrush ImageSource="image.png" Opacity="0.5" />
</Setter.Value>
</Setter>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Button.Resources>
</Button>

关于C# WPF 样式 : One Button Mouseover - One Button keep Image,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18262990/

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