【问题标题】:How to remove Glow of Button on Mouse hover in WPF如何在 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>

请帮帮我。

【问题讨论】:

    标签: c# wpf button styles mousehover


    【解决方案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>
    

    【讨论】:

      猜你喜欢
      • 2013-01-17
      • 1970-01-01
      • 2011-04-20
      • 2013-11-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-02
      相关资源
      最近更新 更多