在ListBox.ItemContainerStyle中使用StaticResource会引发异常

时间:2012-05-02 03:13:52

标签: wpf

以下代码抛出异常“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,所以它的工作方式不同。

0 个答案:

没有答案