Die Bindung einer Stil-Setter-Wert richtig

Ich habe Folgendes Szenario:

<UserControl.Resources>
    <Style x:Key="NormalFontStyle">
        <Setter Property="Control.FontFamily" Value="{Binding MyFont}"></Setter>
    </Style>
    <Style x:Key="BigFontStyle">
        <Setter Property="Control.FontFamily" Value="{Binding MyFont}"></Setter>
        <Setter Property="Control.FontSize" Value="{Binding MyBigFontSize}"></Setter>
    </Style>
</UserControl.Resources>

<Grid Style="{StaticResource NormalFontStyle}">
    <!-- Grid Contents -->
</Grid>

Den DataContext der Gitter ist das ViewModel mit MyFont und MyBigFontSize Eigenschaften. Der obige code funktioniert einwandfrei, und jeder text im Netz "NormalFontStyle" angewendet.

Nun der knifflige Teil: ich möchte die "BigFontStyle", um ein Steuerelement innerhalb des Gitters, die möglicherweise oder möglicherweise nicht den gleichen DataContext, was bedeutet, dass ich nicht mit diesem Ansatz.
Vielleicht verbindlich die Werte der setter, die statischen Eigenschaften ist der einzige Weg zu gehen, (ich habe gerade festgestellt, diese workaround für 3,5, das ist mein Fall hier) aber kein Licht auf dieser, ist willkommen.

InformationsquelleAutor Natxo | 2011-11-10
Schreibe einen Kommentar