FrameworkContentElement.DataContext プロパティ

定義

要素がデータ バインディングに含まれている場合に、その要素のデータ コンテキストを取得または設定します。

public:
 property System::Object ^ DataContext { System::Object ^ get(); void set(System::Object ^ value); };
[System.Windows.Localizability(System.Windows.LocalizationCategory.NeverLocalize)]
public object DataContext { get; set; }
[<System.Windows.Localizability(System.Windows.LocalizationCategory.NeverLocalize)>]
member this.DataContext : obj with get, set
Public Property DataContext As Object

プロパティ値

データ コンテキストとして使用するオブジェクト。

属性

次の例では、新しいカスタム データ オブジェクトを作成し、そのオブジェクトを としてDataContext確立し、その中のプロパティにバインド パスを設定することで、要素にバインドを設定Paragraphします。

MyData myDataObject = new MyData();
myflowdocument.DataContext = myDataObject;
introParagraph.SetBinding(Paragraph.TagProperty, "CustomData");
Dim myDataObject As New MyData()
myflowdocument.DataContext = myDataObject
introParagraph.SetBinding(Paragraph.TagProperty, "CustomData")

注釈

データ コンテキスト は、バインドに使用されるバインディング ソースに関する親要素と、バインドのその他の特性 (パスなど) から要素が情報を継承できるようにする概念です。

データ コンテキストは、共通言語ランタイム (CLR) オブジェクトに直接設定でき、バインドはそのオブジェクトのプロパティに評価されます。 または、データ コンテキストを オブジェクトに DataSourceProvider 設定することもできます。

この依存関係プロパティは、プロパティ値を継承します。 ローカル値またはスタイルを使用して確立された に対 DataContext して他の値を持たない子要素がある場合、プロパティ システムは値を、この値が割り当てられた最も近い親要素の値に DataContext 設定します。

または、 クラスのいずれかのプロパティ Binding を使用して、バインディング ソースを明示的に指定できます: ElementNameSource、または RelativeSource。 詳細については、「 方法: バインディング ソースを指定する」を参照してください

XAML では、 DataContext は宣言として Binding 最も一般的に に設定されます。 プロパティ要素の構文または属性構文のいずれかを使用できます。 属性構文は、このページの例に示されています。 コードで を設定 DataContext することもできます。

XAML プロパティ要素の使用

<object>  
  <object.DataContext>  
    <dataContextObject />  
  </object.DataContext>  
</object>  

XAML 属性の使用方法

<object DataContext="bindingUsage"/>  

\- または -

<object DataContext="{resourceExtension contextResourceKey}"/>  

XAML 値

dataContextObject
親要素内のバインディングのデータ コンテキストとして機能する直接埋め込みオブジェクト。 通常、このオブジェクトは または 別のBindingBindingBaseサブクラスです。 または、バインドを目的とした CLR オブジェクト型の生データを、後で定義された実際のバインドを使用して、ここに配置することもできます。

bindingUsage
適切なデータ コンテキストに評価されるバインディングの使用。 詳細については、「バインディングのマークアップ拡張機能」を参照してください。

resourceExtension
、または DynamicResourceのいずれかですStaticResource。 この使用法は、リソース内のオブジェクトとして定義された生データを参照する場合に使用されます。 「XAML リソース」を参照してください。

contextResourceKey
ResourceDictionaryから要求されるオブジェクトのキー識別子。

依存プロパティ情報

識別子フィールド DataContextProperty
に設定されたメタデータ プロパティ true Inherits

適用対象