私は私のテキストブロックのすべてがineritしたい私のアプリケーションのリソース内のスタイルを定義しました:TextTlockがTextBlockスタイルを継承しないようにするにはどうすればよいですか?
<Style TargetType="{x:Type TextBlock}">
<Setter Property="Effect">
<Setter.Value>
<DropShadowEffect BlurRadius="1" ShadowDepth="0" />
</Setter.Value>
</Setter>
<Setter Property="Foreground" Value="White" />
<Setter Property="FontFamily" Value="Arial" />
<Setter Property="FontWeight" Value="Bold" />
</Style>
私が通過すると、明示的に各テキストブロックにスタイルを決定する必要がありますする必要はありません - ちょうど私すべての人がこのスタイルを自然に継承してほしい。
残念ながら、私がツールチップを定義すると、そのツールチップもこのスタイルを選択します。私はそれがそのデザインのどこかにTextBlock
を組み込んでいるからだと思っています。
私が大丈夫なのは、定義された各ツールチップを使いこなす必要があるということです(アプリケーション全体で遍在することが少ないため)。継承されたテキストブロックスタイルをオーバーライドするツールチップスタイルを定義する方法がある場合は、それでいいよ。
私は、ツールチップがTextBlockスタイルを継承しないようにするために何ができますか?
'TextBlock'にグローバルなデフォルトスタイルを設定するのはひどい考えです。これが理由です。デフォルトの 'TextBlock'スタイルは、普遍的ではなく、必要な場所にのみ設定してください。スタイル付きテキストインスタンスに 'TextBlock'の代わりに' Label'を使うことを考えてみましょう。パディング/マージンなどのスタイルを設定して、正確に見た目を見せることができます。 –