2017-05-30 30 views
0

アプリケーションでセッターを使用して、すべてのコントロールのフォントサイズを変更しようとしています。私のスタイルは次のように探しています:WPFセッターが一部のコントロールで動作しません

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

私のサブスタイルのすべてが私の問題は私のスタイルがすべてのコントロールに適用さISNOTということである。この

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

のように探しています。例えば、シームのラベルは

私のFontSizeセッター

を無視するデフォルトのスタイル: Default Style

トリガースタイル:あなたは実際にLabel要素またはTextBlock要素に Triggered Style

+0

Yは、uは、サブスタイルはサブスタイルを削除します私のbaseStyles目標がある –

答えて

0

を参照してくださいか?後者のタイプはControlではないため、Styleの影響を受けません。しかしこれは動作するはずです:

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

しかし、常に質問をするときに、問題の再現可能なサンプルを提供することを忘れないでくださいを:https://stackoverflow.com/help/mcve

+0

コントローラのスタイルを作りますx:タイプコントロールはラベルを含むすべてのコントロールを設定するはずですか? – Jan18101997

+0

すべて* Controls *ただし、TextBlockはコントロールではありません。 – mm8

+0

私はラベルを使用していて、ラベルはコントロールです。 – Jan18101997

関連する問題