【发布时间】:2012-03-04 04:21:14
【问题描述】:
我有一个 Silverlight 应用程序,我在其中设置了列表框的样式。这是应用程序范围的 ListBoxItem 样式的一部分:
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ListBoxItemGrid" Storyboard.TargetProperty="Background" Duration="0">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource MouseOverColorBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
现在我有另一个列表框,当用户将鼠标悬停在 ListBoxItem 上时,我不希望发生任何事情。我试过这个:
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal" />
<VisualState x:Name="MouseOver" />
</VisualStateGroup>
但这似乎不起作用。如何覆盖默认的应用程序范围的样式?我不确定它是否相关,但应用程序范围的样式是样式,而我的“特殊”列表框的 ListBoxItem 有一个模板。
【问题讨论】:
标签: silverlight templates listbox styles listboxitem