在鼠标悬停时更改WPF/XAML中按钮或标签的背景图像

本文关键字:按钮 标签 图像 背景 XAML 悬停 鼠标 WPF | 更新日期: 2023-09-27 18:00:54

我在Windows窗体中有一个图片框,用作名为pbSignin的按钮。我设法在鼠标悬停时更改了这个图片框的背景,并在这个图片框下添加了签名功能。

现在我希望在WPF应用程序中也发生同样的情况,但它在WPF中出现错误,我不知道该怎么办…请帮助

   pbSignin.MouseEnter += new EventHandler(pbSignin_MouseEnter);
   pbSignin.MouseLeave += new EventHandler(pbSignin_MouseLeave);

   private void pbSignin_MouseLeave(object sender, EventArgs e)
    {
        this.pbSignin.BackgroundImage = ((System.Drawing.Image)(Properties.Resources.RedSignin));
    }
    private void pbSignin_MouseEnter(object sender, EventArgs e)
    {
        this.pbSignin.BackgroundImage = ((System.Drawing.Image)(Properties.Resources.BlueSignin));
    }

在鼠标悬停时更改WPF/XAML中按钮或标签的背景图像

下面是一个如何更改鼠标悬停按钮背景颜色的示例。只需应用于控件的样式,更改picturebox的TargetType和Setter属性,就可以开始了。

<Style TargetType="{x:Type Button}">
    <Setter Property="Background" Value="Green"/>
    <Style.Triggers>
        <Trigger Property="IsMouseOver" Value="True">
            <Setter Property="Background" Value="Red"/>
        </Trigger>
    </Style.Triggers>
</Style>

触发器之外的第一个Setter是该属性的默认值。当触发条件触发时,它将覆盖默认值,并在触发器不再触发时将其恢复。