質問

私はSilverlight 4を使っています、そして私は4月からSilverlight 4ツールキットからテーマの1つを統合しようとしています。

my app.xamlは次のように読み込みます:

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

マイウィンドウが読み込んだとき

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

それは完全に機能します。しかし、私は先に進んで、次の

をしました
<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>
.

失敗します: - (

私はapp.xamlなどの他の場所にリソーススタイルを置きました。

誰でも私がリソースを使う方法を知っているので、各TextBlockにフォアグラウンドを指定する必要はありませんか?

PS - 私はExpressionDarkテーマを使っています...

事前にありがとう、

マイク

役に立ちましたか?

解決

私はあなたが結合源部分を必要とするとは思わない。

次の

を使用しました
<Setter Property="Foreground" Value="{StaticResource ThemeForegroundBrush}" />
.

過去にうまく機能します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top