Esta documentación está archivada y no tiene mantenimiento.

FrameworkElement.DataContext (Propiedad)

Actualización: noviembre 2007

Obtiene o establece el contexto de datos para un elemento cuando participa en un enlace de datos. Se trata de una propiedad de dependencia.

Espacio de nombres:  System.Windows
Ensamblado:  PresentationFramework (en PresentationFramework.dll)
XMLNS para 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
                    Objeto directamente incrustado que actúa como contexto de datos para cualquier enlace dentro del elemento primario. Normalmente, este objeto es Binding u otra clase derivada de BindingBase. Alternativamente, los datos sin procesar de cualquier tipo de objeto CLR diseñados para enlaces se pueden colocar aquí; los enlaces reales se definen después.
                bindingUsage
                    Uso de enlace que se evalúa como un contexto de datos adecuado. Para obtener información detallada, vea Enlazar extensión de marcado.
                resourceExtension
                    Una de las siguientes: extensión de marcado StaticResource o extensión de marcado DynamicResource. Esto se usa al hacer referencia a datos sin procesar definidos como un objeto en los recursos. Vea Información general sobre recursos.
                contextResourceKey
                    Identificador de clave para el objeto que se solicita desde ResourceDictionary.
                

Valor de propiedad

Tipo: System.Object
Objeto que se va a usar como contexto de datos.

Campo identificador

DataContextProperty

Propiedades de metadatos establecidas en true

Inherits

Contexto de datos es un concepto que permite a los elementos heredar información de sus elementos primarios sobre el origen de datos que se utiliza para el enlace, así como otras características del enlace, como la ruta de acceso.

El contexto de datos puede establecerse directamente en un objeto common language runtime (CLR), con los enlaces que se evalúan como las propiedades de ese objeto. Alternativamente, puede establecer el contexto de datos en un objeto DataSourceProvider.

Esta propiedad de dependencia hereda valores de propiedad. Si hay elementos secundarios en los que no se han establecido otros valores para DataContext a través de valores o estilos locales, el sistema de propiedades la establece como el valor DataContext del elemento primario más cercano que tenga asignado este valor.

Alternativamente, puede usar una de las propiedades siguientes de la clase Binding para especificar explícitamente el origen de enlace: ElementName, Source o RelativeSource. Para obtener más información, consulte Cómo: Especificar el origen de enlace.

En XAML, DataContext se establece normalmente como una declaración Binding. Puede usar cualquier sintaxis de elemento de propiedad o sintaxis de atributo. La sintaxis de atributo se muestra en el ejemplo de esta página. También puede utilizar código para establecer DataContext.

DataContext es una propiedad enlazable que simplifica los escenarios donde un contexto podría enlazarse a otro. Sin embargo, si enlaza a DataContext, tenga cuidado de no crear referencias de enlace circulares (no enlace DataContext consigo mismo, aunque sea posible hacerlo debido a la naturaleza de herencia del valor de la propiedad DataContext).

En el ejemplo siguiente se muestra cómo un contexto de datos actúa en un enlace y proporciona la información que define los valores concretos de propiedades enlazadas.

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


...


</Window.Resources>


...


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


Windows Vista

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

.NET Framework

Compatible con: 3.5, 3.0
Mostrar: