Style.BasedOn プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
現在のスタイルの基になる定義済みのスタイルを取得または設定します。
public:
property System::Windows::Style ^ BasedOn { System::Windows::Style ^ get(); void set(System::Windows::Style ^ value); };
public System.Windows.Style BasedOn { get; set; }
[System.Windows.Markup.Ambient]
public System.Windows.Style BasedOn { get; set; }
member this.BasedOn : System.Windows.Style with get, set
[<System.Windows.Markup.Ambient>]
member this.BasedOn : System.Windows.Style with get, set
Public Property BasedOn As Style
プロパティ値
現在のスタイルの基になる定義済みのスタイル。 既定値は null
です。
- 属性
例
WPF のスタイルを拡張または継承するには、いくつかの方法があります。 スタイルは、このプロパティを使用して他のスタイルに基づくことができます。 このプロパティを使用すると、新しいスタイルは、新しいスタイルで明示的に再定義されていない元のスタイルの値を継承します。 次の例では、 Style2
の値をControl.Background継承し、 のYellow
Blue
値をControl.Foreground追加します。
<Style x:Key="Style1">
<Setter Property="Control.Background" Value="Yellow"/>
</Style>
<Style x:Key="Style2" BasedOn="{StaticResource Style1}">
<Setter Property="Control.Foreground" Value="Blue"/>
</Style>
同様に、新しいスタイルが要素のスタイルに基づいている次の例のように、スタイルは既存の WPF 要素の TextBlock スタイルに基づくことができます。
<Style
x:Key="TitleText"
BasedOn="{StaticResource {x:Type TextBlock}}"
TargetType="{x:Type TextBlock}">
<Setter Property="FontSize" Value="32pt" />
<Setter Property="Foreground">
<Setter.Value>
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0.0" Color="#90C117" />
<GradientStop Offset="1.0" Color="#5C9417" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Setter.Value>
</Setter>
<Setter Property="RenderTransform">
<Setter.Value>
<TranslateTransform X="0" Y="10"/>
</Setter.Value>
</Setter>
</Style>
注意
プロパティを使用してスタイルを TargetType 作成し、プロパティも定義 TargetType する別のスタイルに基づく場合、派生スタイルのターゲット型は基本スタイルの型と同じか、または基本スタイルの型から派生する必要があります。
特定の型に対して定義されたスタイルは、次の例のように、他のスタイルに基づくこともできます。
<Style TargetType="{x:Type Button}" BasedOn="{StaticResource Style1}">
<Setter Property="Foreground" Value="Green"/>
</Style>
注釈
各スタイルでは、1 つの BasedOn 値のみがサポートされます。
XAML 属性の使用方法
<object BasedOn="myStyle" .../>
XAML 値
myStyle 既存のスタイル。 通常、既存のスタイルを参照するには、 マークアップ拡張機能と WPF XAML を使用します。
適用対象
.NET