FrameworkContentElement.DataContext Propriété

Définition

Obtient ou définit le contexte de données d’un élément quand il participe à la liaison de données.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

Valeur de propriété

Objet à utiliser comme contexte de données.The object to use as data context.

Attributs

Exemples

L’exemple suivant définit une liaison sur un élément Paragraph, en créant un objet de données personnalisé, en établissant cet objet en tant que DataContextet en définissant le chemin d’accès de liaison à une propriété qu’il contient.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")

Remarques

Le contexte de données est un concept qui permet aux éléments d’hériter des informations de leurs éléments parents concernant la source de liaison utilisée pour la liaison, ainsi que d’autres caractéristiques de la liaison, telles que le chemin d’accès.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.

Le contexte de données peut être défini directement sur un objet Common Language Runtime (CLR)common language runtime (CLR), avec les liaisons qui évaluent aux propriétés de cet objet.Data context can be set directly to a Common Language Runtime (CLR)common language runtime (CLR) object, with the bindings evaluating to properties of that object. Vous pouvez également définir le contexte de données sur un objet DataSourceProvider.Alternatively, you can set the data context to a DataSourceProvider object.

Cette propriété de dépendance hérite des valeurs de propriété.This dependency property inherits property values. S’il existe des éléments enfants sans autre valeur pour DataContext établis par le biais de valeurs ou de styles locaux, le système de propriétés définit la valeur comme étant la DataContext valeur de l’élément parent le plus proche avec cette valeur assignée.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.

Vous pouvez également utiliser l’une des propriétés suivantes de la classe Binding pour spécifier explicitement la source de liaison : ElementName, Sourceou RelativeSource.Alternatively, you can use one of the following properties of the Binding class to specify the binding source explicitly: ElementName, Source, or RelativeSource. Pour plus d’informations, consultez Guide pratique pour Spécifiez lede la source de liaison.For more information, see How to: Specify the Binding Source.

Dans XAMLXAML, DataContext est le plus souvent défini sur comme une déclaration de Binding.In XAMLXAML, DataContext is most commonly set to as a Binding declaration. Vous pouvez utiliser la syntaxe d’élément de propriété ou la syntaxe d’attribut.You can use either property element syntax or attribute syntax. La syntaxe d’attribut est présentée dans l’exemple de cette page.Attribute syntax is shown in the example on this page. Vous pouvez également définir DataContext dans le code.You can also set DataContext in code.

Utilisation des éléments de propriété XAMLXAML Property Element Usage

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

Utilisation d'attributs XAMLXAML Attribute Usage

<object DataContext="bindingUsage"/>  

- ou --or-

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

Valeurs XAMLXAML Values

dataContextObjectdataContextObject
Objet incorporé directement qui sert de contexte de données pour toutes les liaisons au sein de l’élément parent.A directly embedded object that serves as data context for any bindings within the parent element. En général, cet objet est un Binding ou une autre sous-classe BindingBase.Typically, this object is a Binding or another BindingBase subclass. De même, les données brutes de tout type d’objet CLRCLR destiné à la liaison peuvent être placées ici, avec les liaisons réelles définies ultérieurement.Alternatively, raw data of any CLRCLR object type intended for binding may be placed here, with the actual bindings defined later.

bindingUsagebindingUsage
Une utilisation de liaison qui prend la valeur d’un contexte de données approprié.A binding usage that evaluates to an appropriate data context. Pour plus d’informations, consultez Binding, extension de balisage.For details, see Binding Markup Extension.

resourceExtensionresourceExtension
L’une des valeurs suivantes : StaticResourceou DynamicResource.One of the following: StaticResource, or DynamicResource. Cette utilisation est utilisée pour faire référence à des données brutes définies en tant qu’objet dans les ressources.This usage is used when referring to raw data defined as an object in resources. Consultez ressources XAML.See XAML Resources.

contextResourceKeycontextResourceKey
Identificateur de clé pour l’objet demandé à partir d’un ResourceDictionary.The key identifier for the object being requested from within a ResourceDictionary.

Informations sur les propriétés de dépendanceDependency Property Information

Champ d’identificateurIdentifier field DataContextProperty
Propriétés de métadonnées définies sur trueMetadata properties set to true Inherits

S’applique à