Pregunta

Estoy usando Silverlight 4 y estoy tratando de integrar uno de los temas del kit de herramientas Silverlight 4 de abril.

MI app.xaml se lee de la siguiente manera:

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

Cuando mi ventana principal lee

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

funciona perfectamente.Sin embargo, me gustaría usar recursos, así que seguí adelante e hice lo siguiente

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

no falla: - (

He intentado colocar el estilo de recursos en otros lugares como la aplicación.xaml, etc.

¿Alguien sabe cómo puedo usar los recursos, por lo que no tengo que especificar el primer plano para cada bloque de texto?

PS - Estoy usando el tema de ExpressionDark ...

gracias de antemano,

mike

¿Fue útil?

Solución

No creo que necesite la parte vinculación .

He usado el siguiente

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

en el pasado y funciona bien.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top