如果鼠标在按钮上,我们会尝试设置一些按钮的属性。奇怪的是,它只对某些属性有效。
我们创建了一个空白的WPF应用程序,并简单地添加了以下几行代码:
<Button Content="{Binding IsMouseOver, RelativeSource={RelativeSource Self},Mode=OneWay}">
<Button.Style>
<Style TargetType="Button">
<Style.Triggers>
<DataTrigger Binding="{Binding IsMouseOver, RelativeSource={RelativeSource Self}}" Value="True">
<Setter Property="Foreground" Value="Red" />
<Setter Property="Background" Value="Yellow" />
<Setter Property="BorderThickness" Value="5"></Setter>
<Setter Property="BorderBrush" Value="BurlyWood"></Setter>
</DataTrigger>
<DataTrigger Binding="{Binding IsMouseOver, RelativeSource={RelativeSource Self}}" Value="False">
<Setter Property="Foreground" Value="Green" />
<Setter Property="Background" Value="BlueViolet" />
</DataTrigger>
</Style.Triggers>
</Style>
</Button.Style>
</Button>"false"-Trigger的工作方式就像是一个护身符。"True"-Trigger只设置BorderThickness和前景。背景和边框笔刷将被忽略。
有人能告诉我如何解决这个问题吗?
https://stackoverflow.com/questions/47650978
复制相似问题