Cette documentation est archivée et n’est pas conservée.

FrameworkElement.DataContext, propriété

Mise à jour : novembre 2007

Obtient ou définit le contexte de données pour un élément lorsqu'il participe à la liaison de données. Il s'agit d'une propriété de dépendance.

Espace de noms :  System.Windows
Assembly :  PresentationFramework (dans PresentationFramework.dll)
XMLNS pour XAML : http://schemas.microsoft.com/winfx/xaml/presentation

[LocalizabilityAttribute(LocalizationCategory.NeverLocalize)]
public Object DataContext { get; set; }
/** @property */
/** @attribute LocalizabilityAttribute(LocalizationCategory.NeverLocalize) */
public Object get_DataContext()
/** @property */
/** @attribute LocalizabilityAttribute(LocalizationCategory.NeverLocalize) */
public  void set_DataContext(Object value)

public function get DataContext () : Object
public function set DataContext (value : Object)
<object>
  <object.DataContext>
    <dataContextObject />
  </object.DataContext>
</object>
<object DataContext="bindingUsage"/>
- or -
<object DataContext="{resourceExtension contextResourceKey}"/>
dataContextObject
                    Objet directement incorporé qui sert de contexte de données à toutes les liaisons dans l'élément parent. Cet objet est en général Binding ou une autre classe dérivée BindingBase. Les données brutes de tout type d'objet CLR prévues pour la liaison peuvent également être placées ici, avec les liaisons définies en fait ultérieurement.
                bindingUsage
                    Utilisation de liaison qui évalue en un contexte de données approprié. Pour plus d'informations, consultez Binding, extension de balisage.
                resourceExtension
                    L'une des valeurs suivantes : StaticResource ou DynamicResource. Cette utilisation sert à faire référence aux données brutes définies comme objet dans les ressources. Consultez Vue d'ensemble des ressources.
                contextResourceKey
                    Identificateur de clé pour l'objet qui est demandé à partir de ResourceDictionary.
                

Valeur de propriété

Type : System.Object

Objet à utiliser en tant que contexte de données.

Champ d'identificateur

DataContextProperty

Propriétés de métadonnées ayant la valeur true

Inherits

Le contexte de données est un concept qui permet aux éléments d'hériter des informations de leurs éléments parents à propos de la source de liaison utilisée, aussi bien que d'autres caractéristiques de la liaison tel que le chemin d'accès.

Le contexte de données peut être directement défini en tant qu'objet Common Language Runtime (CLR) où les liaisons s'évaluent aux propriétés de cet objet. Vous pouvez également affecter au contexte de données un objet DataSourceProvider.

Cette propriété de dépendance hérite des valeurs de propriété. S'il existe des éléments enfants sans autre valeur pour DataContext établi par le biais de valeurs locales ou de styles, le système de propriétés définit la valeur comme étant la valeur DataContext de l'élément parent le plus proche avec cette valeur attribuée.

Vous pouvez également utiliser l'une des propriétés suivantes de la classe Binding pour spécifier la source de liaison de manière explicite : ElementName, Source ou RelativeSource. Pour plus d'informations, consultez Comment : spécifier la source de liaison.

En XAML, DataContext est le plus couramment défini comme une déclaration de Binding. Vous pouvez utiliser l'une ou l'autre des syntaxes d'élément de propriété ou d'attribut. La syntaxe d'attribut est affichée dans l'exemple de cette page. Vous pouvez également définir DataContext par du code.

DataContext est une propriété pouvant être liée, faciliter des scénarios où un contexte peut être lié à un autre. Toutefois, si vous créez une liaison avec DataContext, veillez à ne pas créer de références circulaires de liaison (ne liez pas DataContext à lui-même, ce qui reste possible de par la nature d'héritage de la valeur de la propriété DataContext).

L'exemple suivant illustre comment un contexte de données agit sur une liaison et fournit les informations qui définissent les valeurs spécifiques des propriétés liées.

<Window.Resources>
  <src:LeagueList x:Key="MyList" />


...


</Window.Resources>


...


<DockPanel DataContext="{Binding Source={StaticResource MyList}}">


Windows Vista

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

.NET Framework

Pris en charge dans : 3.5, 3.0
Afficher: