找不到WPF资源

时间:2010-05-19 13:29:25

标签: wpf systemcolors

如果我在XAML中使用以下内容,则会收到错误:

    <Style TargetType="TreeViewItem">
        <Style.Triggers>
            <DataTrigger Binding="{Binding Selected}" Value="True">
                <Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.HighlightColor}}"/>
            </DataTrigger>
        </Style.Triggers>
    </Style>

错误是:

System.Windows.ResourceDictionary Warning: 9 : Resource not found; ResourceKey='#FF316AC5'

2 个答案:

答案 0 :(得分:5)

您的意思是HighlightColorKey,而不是HighlightColor。密钥与DynamicResource一起使用,而颜色仅与{x:Static}一起使用,但不会是动态的。

答案 1 :(得分:2)

看起来你几乎是对的,只是错误的钥匙!

<Style.Triggers>
    <DataTrigger Binding="{Binding Selected}" Value="True">
        <Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}"/>
        <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.HighlightTextBrushKey}}"/>
    </DataTrigger>
</Style.Triggers>