FrameworkElement.DataContext FrameworkElement.DataContext FrameworkElement.DataContext FrameworkElement.DataContext Property

Definition

Dient zum Abrufen oder Festlegen des Datenkontexts für ein Element fest, wenn das Element an Datenbindungen beteiligt ist.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

Eigenschaftswert

Das Objekt, das als Datenkontext verwendet werden soll.The object to use as data context.

Beispiele

Im folgenden Beispiel wird veranschaulicht, wie ein Datenkontext für eine Bindung fungiert und enthält die Informationen, die die spezifischen Werte der gebundenen Eigenschaften definiert.The following example illustrates how a data context acts on a binding and provides the information that defines the specific values of bound properties.

<Window.Resources>
  <src:LeagueList x:Key="MyList" />
</Window.Resources>
<DockPanel DataContext="{Binding Source={StaticResource MyList}}">

Hinweise

Datenkontext ist ein Konzept, das kann Elemente Informationen von ihren übergeordneten Elementen zur Datenquelle erben, die für die Bindung sowie andere Merkmale der Bindung, z. B. den Pfad verwendet wird.Data context is a concept that allows elements to inherit information from their parent elements about the data source that is used for binding, as well as other characteristics of the binding, such as the path.

Datenkontext kann direkt an ein .NET-Objekt, mit den Bindungen, die als Eigenschaften dieses Objekts bewertet festgelegt werden.Data context can be set directly to a .NET object, with the bindings evaluating to properties of that object. Alternativ können Sie den Datenkontext festlegen, um eine DataSourceProvider Objekt.Alternatively, you can set the data context to a DataSourceProvider object.

Diese Abhängigkeitseigenschaft erbt die Eigenschaftswerte.This dependency property inherits property values. Wenn es untergeordnete Elemente ohne andere Werte für DataContext durch lokale Werte oder Stile, erstellt wurden, und klicken Sie dann das Eigenschaftensystem den Wert festgelegt wird die DataContext Wert des nächsten übergeordneten Element mit diesem Wert zugewiesen.If there are child elements without other values for DataContext established through local values or styles, then the property system will set the value to be the DataContext value of the nearest parent element with this value assigned.

Alternativ können Sie eine der folgenden Eigenschaften von den Binding Klasse, um die Bindungsquelle explizit anzugeben:Alternatively, you can use one of the following properties of the Binding class to specify the binding source explicitly:

- <span data-ttu-id="29e74-403"><xref:System.Windows.Data.Binding.ElementName%2A>.</span><span class="sxs-lookup"><span data-stu-id="29e74-403"><xref:System.Windows.Data.Binding.ElementName%2A>.</span></span>
- <span data-ttu-id="29e74-404"><xref:System.Windows.Data.Binding.Source%2A></span><span class="sxs-lookup"><span data-stu-id="29e74-404"><xref:System.Windows.Data.Binding.Source%2A>.</span></span>
- <span data-ttu-id="29e74-405"><xref:System.Windows.Data.Binding.RelativeSource%2A>.</span><span class="sxs-lookup"><span data-stu-id="29e74-405"><xref:System.Windows.Data.Binding.RelativeSource%2A>.</span></span> 

Weitere Informationen finden Sie unter Vorgehensweise: Angeben der Bindungsquelle.For more information, see How to: Specify the Binding Source.

In XAML DataContext i. d. r. festgelegt ist, als eine Binding Deklaration.In XAML, DataContext is most typically set as a Binding declaration. Sie können entweder Eigenschaftenelement-Syntax oder Attributsyntax verwenden.You can use either property element syntax or attribute syntax. Attributsyntax wird im Beispiel auf dieser Seite angezeigt.Attribute syntax is shown in the example on this page. Sie können auch Code verwenden, um festzulegen DataContext.You can also use code to set DataContext.

DataContext ist eine bindbare Eigenschaft in Szenarien nützlich, in denen ein Kontext in einen anderen gebunden werden kann.DataContext is a bindable property to facilitate scenarios where one context might be bound to another. Jedoch wenn Sie zum Binden DataContext, achten Sie darauf, dass Sie keine zirkulären Bindungsverweise erstellen (Binden keine DataContext auf sich selbst, die es möglich ist, führen Sie aufgrund der Eigenschaft Wert Vererbung der DataContext Eigenschaft).However, if you bind to DataContext, be careful to not create circular binding references (do not bind a DataContext to itself, which it is possible to do because of the property value inheritance nature of the DataContext property).

Verwendung von XAML-EigenschaftenelementenXAML Property Element Usage

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

Verwendung von XAML-AttributenXAML Attribute Usage

<object DataContext="bindingUsage"/>  
- or -  
<object DataContext="{resourceExtension contextResourceKey}"/>  

XAML-WerteXAML Values

dataContextObjectdataContextObject
Ein direkt embedded-Objekt, das als Datenkontext für alle Bindungen im übergeordneten Element dient.A directly embedded object that serves as data context for any bindings within the parent element. Dieses Objekt in der Regel ist eine Binding oder einem anderen BindingBase abgeleitete Klasse.Typically, this object is a Binding or another BindingBase derived class. Alternativ können die unformatierte Daten eines jeden Objekttyp, für die Bindung bestimmt hier mit den tatsächlichen Bindungen, die später definierte platziert werden.Alternatively, raw data of any object type intended for binding may be placed here, with the actual bindings defined later.

bindingUsagebindingUsage
Eine Bindungsverwendung, die mit einem entsprechenden-Kontext ausgewertet wird.A binding usage that evaluates to an appropriate data context. Weitere Informationen finden Sie unter Binding als Markuperweiterung.For details, see Binding Markup Extension.

resourceExtensionresourceExtension
Eine der folgenden: StaticResource oder DynamicResource .One of the following: StaticResource or DynamicResource. Diese Verwendung wird verwendet, in Bezug auf die unformatierten Daten als ein Objekt in den Ressourcen definiert.This usage is used when referring to raw data defined as an object in resources. Finden Sie unter XAML-Ressourcen.See XAML Resources.

contextResourceKeycontextResourceKey
Der Schlüsselbezeichner für das Objekt, das angefordert wird, innerhalb einer ResourceDictionary.The key identifier for the object being requested from within a ResourceDictionary.

Informationen zur AbhängigkeitseigenschaftDependency Property Information

Feld "ID"Identifier field DataContextProperty
Legen Sie auf der Metadaten-Eigenschaften trueMetadata properties set to true Inherits

Gilt für: