鼠标悬停在XAML wpf上时,将按钮默认突出显示颜色更改为透明?

时间:2015-05-05 18:38:38

标签: c# wpf xaml

我有一个透明背景的按钮。当我将鼠标移到按钮上时,按钮上显示浅蓝色(默认颜色)。 我想要的是,即使鼠标悬停在按钮上,我的按钮背景仍应保持透明。 我怎么能在XAML中做到这一点?我搜索了它但找不到与我的问题相关的任何内容。几乎每个示例或演练都用于更改按钮的样式和模板。

XAML代码:

   <Button HorizontalAlignment="Left" Margin="130,92,0,0" VerticalAlignment="Top" Width="223" Height="95.96" Background="{x:Null}" BorderThickness="0">
        <Image Height="95.96" Source="Beam-Bridge-3D-Model.png" Stretch="Fill" Width="182.829"/>
    </Button>

1 个答案:

答案 0 :(得分:8)

您需要使用按钮样式和模板。 在按钮代码中添加以下代码。 我想我在stackoverflow上找到了这个代码?不久前。我会搜索一个链接并发布它。

            <Button.Style>
                <Style TargetType="{x:Type Button}">
                    <Setter Property="Background" Value="Transparent"/>
                    <Setter Property="Template">
                        <Setter.Value>
                            <ControlTemplate TargetType="{x:Type Button}">
                                <Border Background="{TemplateBinding Background}">
                                    <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/>
                                </Border>
                            </ControlTemplate>
                        </Setter.Value>
                    </Setter>
                    <Style.Triggers>
                        <Trigger Property="IsMouseOver" Value="True">
                            <Setter Property="Background" Value="Transparent"/>
                        </Trigger>
                    </Style.Triggers>
                </Style>
            </Button.Style>