在Silverlight中我們經常看到資料綁定源由DataContext或者ItemsSource指定,那麼他們之間的差別有哪些呢?
DataContext:從英文字母意思是資料上下文,在Silverlight中某個父級元素設定了DataContext,那麼其子元素将可以繼承并且使用DataContext中的屬性。DataContext綁定的資料源可以是實體集合、實體、屬性等。
ItemsSource:其資料源通常是實體集合(一列資料),無法讓其子元素繼承使用。
下面我們以一個執行個體主要講解DataContext的用法,其中在父級元素Grid設定了一個DataContext屬性綁定實體,該實體内部有一個屬性為實體集合,此實體集合用于Grid的子元素ListBox的ItemsSource屬性綁定。代碼如下:
首先我們看兩個實體,其中一個實體屬性為List<>:
其次我們來看Xaml代碼綁定如下:
最後我們看看另外一種背景綁定DataContext的方式。
本文轉自程興亮 51CTO部落格,原文連結:http://blog.51cto.com/chengxingliang/841981