以下代码抛出异常“System.NullReferenceException未处理 Message =对象引用未设置为对象的实例。 源= Wizbang“:
<ListBox.ItemContainerStyle>
<Style TargetType="{x:Type ListBoxItem}">
<Style.Resources>
<SolidColorBrush x:Key="SCB" Color="Orange" />
</Style.Resources>
<Style.Triggers>
<Trigger Property="IsSelected" Value="True" >
<Setter Property="Background" Value="{StaticResource SCB}" />
</Trigger>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="Orange" />
</Trigger>
</Style.Triggers>
</Style>
</ListBox.ItemContainerStyle>
但是,如果我删除第一个Trigger的Setter中的StaticResource引用,并将其替换为字符串值,例如“Orange”,就像在第二个Trigger中一样,一切正常。
我无法弄清楚原因。我在其他地方的Triggers中使用类似的StaticResources,但似乎因为这是一个ListBox.ItemContainerStyle,所以它的工作方式不同。