2010-07-20 6 views
0

J'utilise Silverlight 4 et j'essaie d'intégrer l'un des thèmes de la boîte à outils Silverlight 4 d'avril.Silverlight 4: XamlParseException lorsque j'essaie de lier des styles et des ressources

Mon App.xaml se lit comme suit:

<Application.Resources> 
    <ResourceDictionary> 
     <ResourceDictionary.MergedDictionaries> 
      <ResourceDictionary Source="Themes/System.Windows.Controls.Theming.ExpressionDark.xaml" /> 
     </ResourceDictionary.MergedDictionaries> 
    </ResourceDictionary> 
</Application.Resources> 

Quand ma fenêtre principale se lit

<Grid x:Name="LayoutRoot" Background="{Binding Source={StaticResource ThemeBackgroundBrush}}"> 
    <TextBlock Text="Test" HorizontalAlignment="Center" VerticalAlignment="Center" Foreground="{Binding Source={StaticResource ThemeForegroundBrush}}" /> 
</Grid> 

Il fonctionne parfaitement. Cependant, je voudrais utiliser les ressources alors je suis allé de l'avant et a fait le

<Grid x:Name="LayoutRoot" Background="{Binding Source={StaticResource ThemeBackgroundBrush}}"> 
    <Grid.Resources> 
     <Style TargetType="TextBlock"> 
      <Setter Property="Foreground" Value="{Binding Source={StaticResource ThemeForegroundBrush}}" /> 
     </Style> 
    </Grid.Resources> 
    <TextBlock Text="Test" HorizontalAlignment="Center" VerticalAlignment="Center" /> 
</Grid> 

suivante Il ne :-(

J'ai essayé de placer le style des ressources dans d'autres endroits comme le App.xaml etc.

Quelqu'un sait comment je peux utiliser les ressources, donc je n'ai pas de préciser l'avant-plan pour chaque TextBlock

PS - J'utilise le thème ExpressionDark ...

Merci à l'avance,

Mike

Répondre

3

Je ne crois pas que vous avez besoin de la liaison Source partie.

J'ai utilisé le

suivant
<Setter Property="Foreground" Value="{StaticResource ThemeForegroundBrush}" /> 

dans le passé et il fonctionne bien.

+0

Merci Justing - fonctionne parfaitement! – mkamioner

Questions connexes