FrameworkContentElement.DataContext Özellik

Tanım

Veri bağlamaya katıldığında öğenin veri bağlamını alır veya ayarlar.

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; }
[<System.Windows.Localizability(System.Windows.LocalizationCategory.NeverLocalize)>]
member this.DataContext : obj with get, set
Public Property DataContext As Object

Özellik Değeri

Object

Veri bağlamı olarak kullanılacak nesne.

Öznitelikler

Örnekler

Aşağıdaki örnek, yeni bir özel veri nesnesi oluşturarak, bu nesneyi olarak DataContextoluşturarak ve bağlama yolunu içindeki bir özelliğe ayarlayarak bir öğe üzerinde Paragraph bağlama ayarlar.

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

Açıklamalar

Veri bağlamı , öğelerin bağlama için kullanılan bağlama kaynağı ve yol gibi bağlamanın diğer özellikleri hakkında üst öğelerinden bilgi devralmasını sağlayan bir kavramdır.

Veri bağlamı doğrudan ortak dil çalışma zamanı (CLR) nesnesine ayarlanabilir ve bağlamalar bu nesnenin özelliklerine göre değerlendirilir. Alternatif olarak, veri bağlamını bir DataSourceProvider nesne olarak ayarlayabilirsiniz.

Bu bağımlılık özelliği özellik değerlerini devralır. Yerel değerler veya stiller aracılığıyla oluşturulacak başka değeri DataContext olmayan alt öğeler varsa, özellik sistemi değeri bu değer atanmış en yakın üst öğenin değeri olarak DataContext ayarlar.

Alternatif olarak, bağlama kaynağını açıkça belirtmek için sınıfının aşağıdaki özelliklerinden Binding birini kullanabilirsiniz: ElementName, Sourceveya RelativeSource. Daha fazla bilgi için bkz . Nasıl yapılır: Bağlama Kaynağını Belirtme.

XAML'de en DataContext yaygın olarak bir Binding bildirim olarak ayarlanır. Özellik öğesi söz dizimlerini veya öznitelik söz dizimlerini kullanabilirsiniz. Öznitelik söz dizimi bu sayfadaki örnekte gösterilmiştir. Kodda da ayarlayabilirsiniz DataContext .

XAML Özellik Öğesi Kullanımı

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

XAML Öznitelik Kullanımı

<object DataContext="bindingUsage"/>  

-veya-

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

XAML Değerleri

dataContextObject
Üst öğe içindeki tüm bağlamalar için veri bağlamı işlevi görecek doğrudan eklenmiş nesne. Genellikle, bu nesne bir veya başka bir Binding BindingBase alt sınıftır. Alternatif olarak, bağlama için hedeflenen herhangi bir CLR nesne türünün ham verileri, daha sonra tanımlanan gerçek bağlamalarla buraya yerleştirilebilir.

bindingUsage
Uygun bir veri bağlamı olarak değerlendirilen bağlama kullanımı. Ayrıntılar için bkz . Bağlama İşaretleme Uzantısı.

resourceExtension
Aşağıdakilerden biri: StaticResource, veya DynamicResource. Bu kullanım, kaynaklarda nesne olarak tanımlanan ham verilere başvururken kullanılır. Bkz . XAML Kaynakları.

contextResourceKey
içinden istenen ResourceDictionarynesnenin anahtar tanımlayıcısı.

Bağımlılık Özelliği Bilgileri

Tanımlayıcı alanı DataContextProperty
Meta veri özellikleri olarak ayarlandı true Inherits

Şunlara uygulanır