自動スタイル継承について質問があります。
基本的に、テキストボックスのデフォルトスタイルとそれから派生するクラスのテキストブロックを定義したいスーパークラスがあります。これらのスタイルは、Styles.xamlで定義されているデフォルトのスタイルに基づいています。
<controls:BaseUserControl.Resources>
<Style TargetType="{x:Type TextBlock}" BasedOn="{StaticResource DisplayLabel}">
<Setter Property="Foreground" Value="Black"/>
<Setter Property="Margin" Value="10,0,10,0"/>
<Setter Property="HorizontalAlignment" Value="Left"/>
<Setter Property="VerticalAlignment" Value="Center"/>
</Style>
<Style TargetType="{x:Type TextBox}" BasedOn="{StaticResource InputField}">
<Setter Property="Height" Value="30"/>
<Setter Property="Margin" Value="10,0,0,0"></Setter>
<Setter Property="HorizontalAlignment" Value="Left"/>
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="VerticalContentAlignment" Value="Center"></Setter>
</Style>
</controls:BaseUserControl.Resources>
このクラスはと呼ばれDataEntryView
ます。
このクラスから派生すると、テキストブロックとテキストボックスは、ここで定義したものではなく、デフォルトのWindowsの外観になります。
<views:DataEntryView.Resources>
<!-- Do I need to add anything here? -->
</views:DataEntryView.Resources>
忘れているのは何ですか?
基本的に、すべてのテキストブロックとテキストボックスのスタイルを明示的に特定のキーに設定したくありません。