FrameworkContentElement.DataContext 속성

정의

데이터 바인딩에 참여할 때 요소에 대한 데이터 컨텍스트를 가져오거나 설정합니다.Gets or sets the data context for an element when it participates in data binding.

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; }
member this.DataContext : obj with get, set
Public Property DataContext As Object

속성 값

데이터 컨텍스트로 사용할 개체입니다.The object to use as data context.

특성

예제

다음 예제에서는 새 사용자 지정 데이터 개체를 만들고 해당 개체를 DataContext로 설정 하 고 바인딩 경로를 그 안에 있는 속성으로 설정 하 여 Paragraph 요소에 대 한 바인딩을 설정 합니다.The following example sets a binding on a Paragraph element, by creating a new custom data object, establishing that object as DataContext, and setting the binding path to a property within it.

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")

설명

데이터 컨텍스트 는 요소가 바인딩에 사용 되는 바인딩 소스에 대 한 부모 요소에서 정보를 상속할 수 있도록 하는 개념과 경로와 같은 바인딩의 다른 특성입니다.Data context is a concept that allows elements to inherit information from their parent elements about the binding source that is used for binding, as well as other characteristics of the binding such as the path.

데이터 컨텍스트는 해당 개체의 속성을 평가 하는 바인딩을 사용 하 여 CLR(공용 언어 런타임)common language runtime (CLR) 개체로 직접 설정할 수 있습니다.Data context can be set directly to a CLR(공용 언어 런타임)common language runtime (CLR) object, with the bindings evaluating to properties of that object. 또는 DataSourceProvider 개체에 대 한 데이터 컨텍스트를 설정할 수 있습니다.Alternatively, you can set the data context to a DataSourceProvider object.

속성 값이 종속성 속성을 상속 합니다.This dependency property inherits property values. 로컬 값 또는 스타일을 통해 설정 된 DataContext에 대 한 다른 값이 없는 자식 요소가 있는 경우 속성 시스템에서는이 값이 할당 된 가장 가까운 부모 요소의 DataContext 값으로 설정 됩니다.If there are child elements with no other value for DataContext established through local values or styles, the property system will set the value to be the DataContext value of the nearest parent element with this value assigned.

또는 Binding 클래스의 다음 속성 중 하나를 사용 하 여 바인딩 소스를 ElementName, Source또는 RelativeSource로 명시적으로 지정할 수 있습니다.Alternatively, you can use one of the following properties of the Binding class to specify the binding source explicitly: ElementName, Source, or RelativeSource. 자세한 내용은 방법: 바인딩 소스 지정을 참조 하세요.For more information, see How to: Specify the Binding Source.

XAMLXAML에서 DataContextBinding 선언으로 가장 일반적으로로 설정 됩니다.In XAMLXAML, DataContext is most commonly set to as a Binding declaration. 속성 요소 구문이 나 특성 구문을 사용할 수 있습니다.You can use either property element syntax or attribute syntax. 특성 구문 예제에서는이 페이지에 표시 됩니다.Attribute syntax is shown in the example on this page. 코드에 DataContext를 설정할 수도 있습니다.You can also set DataContext in code.

XAML 속성 요소 사용XAML Property Element Usage

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

XAML 특성 사용XAML Attribute Usage

<object DataContext="bindingUsage"/>  

-또는--or-

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

XAML 값XAML Values

dataContextObjectdataContextObject
부모 요소 내에서 모든 바인딩에 대 한 데이터 컨텍스트로 사용 되는 직접 포함 된 개체입니다.A directly embedded object that serves as data context for any bindings within the parent element. 일반적으로이 개체는 Binding 또는 다른 BindingBase 하위 클래스입니다.Typically, this object is a Binding or another BindingBase subclass. 또는 바인딩에 적합 한 모든 CLRCLR 개체 형식의 원시 데이터를 나중에 정의 된 실제 바인딩과 함께 배치할 수 있습니다.Alternatively, raw data of any CLRCLR object type intended for binding may be placed here, with the actual bindings defined later.

bindingUsagebindingUsage
적절 한 데이터 컨텍스트를으로 계산 되는 바인딩 사용 합니다.A binding usage that evaluates to an appropriate data context. 자세한 내용은 Binding 태그 확장을 참조하세요.For details, see Binding Markup Extension.

resourceExtensionresourceExtension
다음 중 하나: StaticResource, 또는 DynamicResource합니다.One of the following: StaticResource, or DynamicResource. 리소스에서 사용 되는 개체로 정의 하는 원시 데이터를 참조할 때 사용 됩니다.This usage is used when referring to raw data defined as an object in resources. 참조 XAML 리소스합니다.See XAML Resources.

contextResourceKeycontextResourceKey
ResourceDictionary내에서 요청 되는 개체의 키 식별자입니다.The key identifier for the object being requested from within a ResourceDictionary.

종속성 속성 정보Dependency Property Information

식별자 필드Identifier field DataContextProperty
메타 데이터 속성 설정 trueMetadata properties set to true Inherits

적용 대상