【发布时间】:2015-05-12 13:43:15
【问题描述】:
我有这组资源,用于创建按钮样式,在悬停、单击和空闲状态时更改按钮上的图像。
<Window.Resources>
<Image x:Key="LoginIdle" Source="/content/images/btn-login-idle.png" />
<Image x:Key="LoginHover" Source="/content/images/btn-login-hover.png" />
<Image x:Key="LoginActive" Source="/content/images/btn-login-active.png" />
<Style x:Key="LoginButtonStyle" TargetType="{x:Type Button}">
<Setter Property="OverridesDefaultStyle" Value="True"/>
<Setter Property="Content" Value="{StaticResource LoginIdle}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource LoginIdle}"/>
</Trigger>
<Trigger Property="IsPressed" Value="True">
<Setter Property="Background" Value="{DynamicResource LoginActive}"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Window.Resources>
我试着按下按钮。
<Button Style="{DynamicResource LoginButtonStyle}" Name="LoginButton" Click="LoginBtn_Click">
</Button>
问题是,图像不存在。
我还尝试在按钮上设置内容值并仅更改后端代码上的图像,但是当我尝试使背景透明时,我的图像周围有一个边框。我认为这是因为按钮的自然行为。不太确定。
总之,我想要完成的是在按钮上添加一个空闲图像,在悬停、按下和离开按钮时更改图像。
【问题讨论】:
标签: wpf button microsoft-metro