如何在 WPF 中删除鼠标悬停时的按钮发光
Posted
技术标签:
【中文标题】如何在 WPF 中删除鼠标悬停时的按钮发光【英文标题】:How to remove Glow of Button on Mouse hover in WPF 【发布时间】:2013-08-09 22:33:53 【问题描述】:我在 WPF 中使用了一个简单的按钮。 我已经在背景上放置了按钮的图像。 我的问题是,当我将鼠标指针移动到按钮时,它会获得默认发光并覆盖作为背景给出的图像。
<Button Grid.Column="3" Name="Play" BorderBrush="Transparent"
Focusable="False" Width="45" Height="45" Click="Play_Click"
VerticalAlignment="Center" HorizontalAlignment="Center" Margin="0,6,10,6">
<Button.Background >
<ImageBrush ImageSource="images/play.png" />
</Button.Background>
<Button.Foreground>
<ImageBrush ImageSource="images/play.png" />
</Button.Foreground>
</Button>
请帮帮我。
【问题讨论】:
【参考方案1】:在 Button 的 ControlTemplate 中定义。您应该创建自己的。
例如这样。
<Style x:Key="MyButtonStyle" TargetType="Button">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Grid Background="TemplateBinding Background">
<ContentPresenter HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
然后您可以将此样式应用于您的按钮。并将背景设置为您的图像。
<Button Style="StaticResource MyButtonStyle" Grid.Column="3" Name="Play" BorderBrush="Transparent"
Focusable="False" Width="45" Height="45" Click="Play_Click"
VerticalAlignment="Center" HorizontalAlignment="Center" Margin="0,6,10,6">
<Button.Background >
<ImageBrush ImageSource="images/play.png" />
</Button.Background>
</Button>
【讨论】:
以上是关于如何在 WPF 中删除鼠标悬停时的按钮发光的主要内容,如果未能解决你的问题,请参考以下文章