【发布时间】:2009-08-19 21:35:54
【问题描述】:
我是 WPF 的初学者,我什至不知道在哪里可以找到这个问题的答案。这个 XAML 对我来说似乎很简单:
<Page
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Grid>
<Button>
<Button.Style>
<Style TargetType="{x:Type Button}">
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="Green"/>
</Trigger>
</Style.Triggers>
</Style>
</Button.Style>
<Button.Content>Test</Button.Content>
</Button>
</Grid>
</Page>
当我将鼠标悬停在按钮上时,IsMouseOver 变为True,并且触发器使背景变为绿色。一瞬间。然后变成蓝色。
更好的是:如果我将相同的设置器附加到 IsFocused 属性,一旦我关注按钮,背景颜色就会在绿色和蓝色之间跳动。
在 Button 的某个地方(我猜它是在 Vista 下使用的任何默认主题中)有一些东西使它以这种方式运行。我怀疑触发器需要设置另一个属性。但是什么?
【问题讨论】:
标签: wpf button triggers styles