繁体   English   中英

C#WPF鼠标悬停按钮 - 没有内容

[英]C# WPF Mouseover Button - no content

我刚编辑了这个按钮。 因为我想要鼠标悬停效果。 不幸的是,Button的内容没有显示。 如果我用鼠标移动它,我想改变字体颜色。

<Button Content="Button" HorizontalAlignment="Left" VerticalAlignment="Bottom" Width="185" Height="50" HorizontalContentAlignment="Left" BorderBrush="{x:Null}" Foreground="{x:Null}" Canvas.Top="42">
    <Button.Style>
        <Style TargetType="{x:Type Button}">
            <Setter Property="Background" Value="#FF37424A"/>
            <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="#FF303B43"/>
                </Trigger>
            </Style.Triggers>
        </Style>
    </Button.Style>
</Button>

不幸的是,Button的内容没有显示。

不要将Foreground属性设置为{x:Null}

如果我用鼠标移动它,我想改变字体颜色。

添加一个在IsMouseOver触发器中设置Foreground属性的setter:

<Button Content="Button" HorizontalAlignment="Left" VerticalAlignment="Bottom" Width="185" Height="50" 
                HorizontalContentAlignment="Left" BorderBrush="{x:Null}" Canvas.Top="42">
    <Button.Style>
        <Style TargetType="{x:Type Button}">
            <Setter Property="Background" Value="#FF37424A"/>
            <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="#FF303B43"/>
                    <Setter Property="Foreground" Value="Red"/>
                </Trigger>
            </Style.Triggers>
        </Style>
    </Button.Style>
</Button>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM