Setter.Value プロパティ

定義

Setter で指定されたプロパティに適用する値を取得または設定します。

public:
 property Platform::Object ^ Value { Platform::Object ^ get(); void set(Platform::Object ^ value); };
IInspectable Value();

void Value(IInspectable value);
public object Value { get; set; }
var object = setter.value;
setter.value = object;
Public Property Value As Object
<Setter ...>
  <Setter.Value>
    objectValue
  </Setter.Value>
</Setter>
- or -
<Setter Value="attributeValue"/>
-or-
<Setter Value="extensionUsage"/>

プロパティ値

Object

Platform::Object

IInspectable

Setter で指定されたプロパティに適用する値。

注釈

XAML 構文からわかるように、XAML で SetterValueを指定するには、さまざまな方法があります。

  • 属性として、文字列値を使用します。 このような文字列値は、数値の設定、列挙型からの名前付き値、URI (Uniform Resource Identifier) などの単純なケースで、プロパティ固有の型に暗黙的に変換できます。
  • XAML オブジェクト要素構文で宣言され、オブジェクト要素がプロパティ要素の使用内で入れ子になっている完全な新しいオブジェクトとして。
  • 引用符内で {StaticResource} マークアップ拡張 を使用する属性として。 通常、プロパティの値型によって、適切な構文が決まります。 XAML の使用方法の詳細については、 XAML の概要 または XAML 構文ガイドを参照してください。 ほとんどの XAML UI プロパティには属性構文を使用できます。また、プロパティ要素の使用やリソース参照を特に必要とする UI プロパティはあまり一般的ではありません。 {StaticResource} マークアップ拡張の使用は、文字列や数値の値が複数のスタイルまたはプロパティによって共有されている場合でも適切です。

SetterProperty プロパティValue プロパティの両方を指定する必要があります。 それ以外の場合は、例外がスローされます ( Setter が XAML で作成されるか、コードで変更されたかに応じて、解析例外またはランタイム エラー)。

コードを使用して Setter インスタンスにアクセスする場合、親 StyleIsSealed プロパティの値がtrueされている場合、Setter インスタンスのプロパティの値を変更することはできません。 これは、個々のSetter プロパティによっても報告されます。 ランタイムが UI 要素にスタイルを適用し、UI に表示するときに、これらのプロパティが true に設定されます。 シールされた Setter を変更しようとすると、ランタイム エラーがスローされます。

スタイルとテンプレート

スタイルSetter を使用して、任意の依存関係プロパティに値を適用できます。 ただし、一般的なStyleの XAML マークアップの大部分を構成するのは、コントロール派生クラスの Template プロパティのSetterです。 Property="Template"を持つSetterValueは、ほとんどの場合、ControlTemplate オブジェクト要素を含むプロパティ要素として指定されます。

スタイルを使用してコントロール テンプレートを定義する場合、Style要素の TargetTypeControl.Template setter の ControlTemplate 要素の TargetType は常に同じ値を使用する必要があります。

テンプレート セッターは、そのテンプレートが適用されるコントロール インスタンスの基本的なテンプレート UI 定義を定義します。 また、コントロールの表示状態や、既定のテーマ切り替えなどの状態ベースの UI 定義も含まれます。 ListBox などの複雑なコントロールの場合、既定のテンプレート StyleControlTemplate 内には数百行の XAML を含めることができます。 コントロール テンプレートのシナリオにおける Style の役割の詳細については、「 XAML コントロール テンプレート」を参照してください。

適用対象