2017-05-30 3 views
0

Ich versuche, einen Setter in meiner Anwendung zu verwenden, um die Schriftgröße aller Steuerelemente zu ändern. Mein Stil ist wie folgt aussehen:WPF-Setter funktioniert bei einigen Steuerelementen nicht

<Style x:Key="baseStyle" TargetType="{x:Type Control}"> 
    <Setter Property="FontSize" Value="12" /> 

    <Setter Property="Background" Value="{x:Null}" /> 
    <Style.Triggers> 
     <DataTrigger Binding="{Binding Width, ConverterParameter=1000, Converter={StaticResource DoubleToBoolConverter}, ElementName=window, Mode=OneWay}" Value="True"> 
      <Setter Property="FontSize" Value="24" /> 
      <Setter Property="Background" Value="Red" /> 
     </DataTrigger> 
    </Style.Triggers> 
</Style> 

Alle meine Substile sind wie diese suchen

<Style BasedOn="{StaticResource baseStyle}" TargetType="{x:Type Button}"> 
    ... 
</Style> 

Mein Problem ist, dass meine Designs auf alle Bedienelemente angewendet isnot. Labels zum Beispiel Naht meine Setter Fontsize

Standard-Style zu ignorieren: Default Style

Triggered Stil: Triggered Style

+0

Y u Unter Arten entfernen Substile Stile für die Steuerung machen machen –

Antwort

0

Haben Sie eigentlich zu Label Elemente oder TextBlock Elemente beziehen? Weil der letztere Typ kein Control ist und nicht von Ihrem Style beeinflusst wird. Dies sollte jedoch funktionieren:

<Style BasedOn="{StaticResource baseStyle}" TargetType="{x:Type Label}" /> 

Aber bitte immer daran denken, eine reproduzierbare Probe Ihres Problems zu liefern, wenn Sie eine Frage stellen: https://stackoverflow.com/help/mcve

+0

mein baseStyles Ziel ist x: Type Control soll hier nicht alle Controls inklusive Labels setzen? – Jan18101997

+0

Alle * Steuerelemente * aber ein TextBlock ist kein Steuerelement. – mm8

+0

Ich verwende Etiketten und Etiketten sind Kontrollen. – Jan18101997

Verwandte Themen