2010-05-19 22 views
3

Si j'utilise ce qui suit dans XAML je reçois une erreur:ressources WPF pas trouvé

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

L'erreur est:

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

Répondre

2

On dirait que vous avez presque raison, juste les mauvaises touches!

<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> 
5

que vous vouliez dire HighlightColorKey, pas HighlightColor. La clé est utilisée avec DynamicResource alors que la couleur est utilisée uniquement avec {x:Static} mais ne sera pas dynamique.

+0

Je ne reçois pas plus l'erreur, mais je ne suis pas la couleur de surlignage soit ... – imekon

+0

Vous vouliez probablement dire comme déclencheur? –

+0

Non, je voulais le DataTrigger, car il se lie à Selected sur ma classe – imekon