C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

ツリー一括表示

【WPF】TexkBlockのStyleについて /tro (19/07/23(Tue) 23:42) #91715
Re[1]: 【WPF】TexkBlockのStyleについて /Hongliang (19/07/24(Wed) 06:27) #91718
Re[1]: 【WPF】TexkBlockのStyleについて /ぶなっぷ (19/07/24(Wed) 12:45) #91723
  └ Re[2]: 【WPF】TexkBlockのStyleについて /tro (19/07/26(Fri) 17:01) #91741
    └ Re[3]: 【WPF】TexkBlockのStyleについて /ぶなっぷ (19/07/29(Mon) 09:06) #91748
      └ Re[4]: 【WPF】TexkBlockのStyleについて /tro (19/07/31(Wed) 16:16) #91763
        └ Re[5]: 【WPF】TexkBlockのStyleについて /ぶなっぷ (19/08/05(Mon) 12:42) #91807
          └ Re[6]: 【WPF】TexkBlockのStyleについて /tro (19/08/08(Thu) 11:37) #91884
            └ Re[7]: 【WPF】TexkBlockのStyleについて /とっちゃん (19/08/08(Thu) 14:20) #91889


親記事 / ▼[ 91718 ] ▼[ 91723 ]
■91715 / 親階層)  【WPF】TexkBlockのStyleについて
□投稿者/ tro (3回)-(2019/07/23(Tue) 23:42:46)

分類:[.NET 全般] 

TextBlockをStyleにてFontSizeを定義したところ、
Labelのフォントサイズまで変わってしまいました。
LabelにFontSizeを指定してもTextBlockのFontSizeで上書きされているようです。

別々のコントロールなのに、なぜこのようなことが起きてしまうのでしょうか。
またTextBlockとLabelそれぞれStyleに定義したい場合はどのようにしたら良いのでしょうか。
[ □ Tree ] 返信 編集キー/

▲[ 91715 ] / 返信無し
■91718 / 1階層)  Re[1]: 【WPF】TexkBlockのStyleについて
□投稿者/ Hongliang (846回)-(2019/07/24(Wed) 06:27:12)
下記のごくシンプルな構造で確認しましたが、特に問題はありませんでした。
再現コードがないと何とも言えませんが、何か特殊な記述がされていたりするのでしょう。

<Window x:Class="MainWindow"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  x:Name="Window" Width="300" Height="300">
  <Window.Resources>
    <Style TargetType="TextBlock">
      <Setter Property="FontSize" Value="32"/>
    </Style>
  </Window.Resources>
  <StackPanel>
    <TextBlock>test</TextBlock>
    <Label>test</Label>
    <Label FontSize="24">test</Label>
  </StackPanel>
</Window>

[ 親 91715 / □ Tree ] 返信 編集キー/

▲[ 91715 ] / ▼[ 91741 ]
■91723 / 1階層)  Re[1]: 【WPF】TexkBlockのStyleについて
□投稿者/ ぶなっぷ (201回)-(2019/07/24(Wed) 12:45:33)
これですよね?
https://codeday.me/jp/qa/20190403/538900.html

書かれているとおりです。
Aplicationではなく、Window側にリソースを設定してください。
[ 親 91715 / □ Tree ] 返信 編集キー/

▲[ 91723 ] / ▼[ 91748 ]
■91741 / 2階層)  Re[2]: 【WPF】TexkBlockのStyleについて
□投稿者/ tro (4回)-(2019/07/26(Fri) 17:01:17)
返信ありがとうございます。
説明不足ですみません、Styleは下記のリソースディクショナリーに定義して使用していました。

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

<SolidColorBrush x:Key="TextColor" Color="#FFFFFFFF"/>
<SolidColorBrush x:Key="DataDisplaySectionColor" Color="#000000"/>

<Style TargetType="{x:Type Label}">
<Setter Property="Background" Value="{StaticResource DataDisplaySectionColor}"/>
<Setter Property="Foreground" Value="{StaticResource TextColor}"/>
<Setter Property="FontSize" Value="16"/>
</Style>

<Style TargetType="{x:Type TextBlock}">
<Setter Property="OverridesDefaultStyle" Value="True"/>
<Setter Property="Background" Value="{StaticResource DataDisplaySectionColor}"/>
<Setter Property="Foreground" Value="{StaticResource TextColor}"/>
<Setter Property="FontSize" Value="18"/>
</Style>

</ResourceDictionary>
[ 親 91715 / □ Tree ] 返信 編集キー/

▲[ 91741 ] / ▼[ 91763 ]
■91748 / 3階層)  Re[3]: 【WPF】TexkBlockのStyleについて
□投稿者/ ぶなっぷ (202回)-(2019/07/29(Mon) 09:06:37)
問題は、このリソースディクショナリーをどこで取り込んでいるかです。
AplicationのXAMLで取り込んでいるなら、Window側のリソースで取り込むようにしてみてください。
[ 親 91715 / □ Tree ] 返信 編集キー/

▲[ 91748 ] / ▼[ 91807 ]
■91763 / 4階層)  Re[4]: 【WPF】TexkBlockのStyleについて
□投稿者/ tro (5回)-(2019/07/31(Wed) 16:16:17)
UserContorolで取り込んでいます。

[ 親 91715 / □ Tree ] 返信 編集キー/

▲[ 91763 ] / ▼[ 91884 ]
■91807 / 5階層)  Re[5]: 【WPF】TexkBlockのStyleについて
□投稿者/ ぶなっぷ (203回)-(2019/08/05(Mon) 12:42:10)
私のところで試してみましたが、
UserControlでだけ取り込めば再現しません。

Applicationでも同様に取り込むと再現します。
Applicationでも取り込んでいませんか?

[ 親 91715 / □ Tree ] 返信 編集キー/

▲[ 91807 ] / ▼[ 91889 ]
■91884 / 6階層)  Re[6]: 【WPF】TexkBlockのStyleについて
□投稿者/ tro (6回)-(2019/08/08(Thu) 11:37:18)
はい、Applicationでも取り込んでいます。
[ 親 91715 / □ Tree ] 返信 編集キー/

▲[ 91884 ] / 返信無し
■91889 / 7階層)  Re[7]: 【WPF】TexkBlockのStyleについて
□投稿者/ とっちゃん (614回)-(2019/08/08(Thu) 14:20:47)
No91884 (tro さん) に返信
> はい、Applicationでも取り込んでいます。

ぶなっぷさんが書いていますが、Application で取り込まないようにすれば、現象が発生しなくなりますよ。

[ 親 91715 / □ Tree ] 返信 編集キー/


管理者用

- Child Tree -