與我們常用的一些WPF 控件相同,ScatterView 控件也支援資料綁定功能。本篇将示範如何利用ScatterView 綁定Win7 系統中的樣例圖檔,并且每張圖檔會以獨立的ScatterViewItem 形式展現出來。
首先,建立一個Surface Application(WPF) 項目,在Grid 中添加ScatterView 控件,并命名為mainScatterView。
<Grid>
<s:ScatterView x:Name="mainScatterView">
</s:ScatterView>
</Grid>
在C# 代碼中将“Sample Pictures”目錄下的圖檔全部添加到ScatterView 的ItemsSource。
string imagesPath = @"C:\Users\Public\Pictures\Sample Pictures\";
try
{
mainScatterView.ItemsSource = System.IO.Directory.GetFiles(imagesPath, "*.jpg");
}
catch (System.IO.DirectoryNotFoundException)
// Write Error info here.
按下 F5 運作程式,ScatterView 會為每張圖檔建立一個ScatterViewItem 控件。但是由于XAML 代碼中沒有編寫任何樣式模闆,是以ScatterViewItem 隻顯示出圖檔路徑及名稱而不是圖檔本身(如下圖)。
NoBinding
為了将圖檔在ScatterViewItem 顯示出來,我們需要定義一個ItemTemplate,它可以使Image 對象與ScatterViewItem 控件綁定在一起。如下代碼所示,DataTemplate 設定好資料源是Image 對象即可。
<s:ScatterView.ItemTemplate>
<DataTemplate>
<Image Source="{Binding}"/>
</DataTemplate>
</s:ScatterView.ItemTemplate>
再次運作程式,ScatterViewItem 控件會依照ItemTemplate 屬性重新建立,同時圖檔也會在ScatterView 控件中正常的顯示。至此我們便完成了ScatterView 的綁定功能,便可以随意的對圖檔進行Manipulating 操作。
本文轉自Gnie部落格園部落格,原文連結:http://www.cnblogs.com/gnielee/archive/2011/07/18/wpf-surface2sdk-binding.html,如需轉載請自行聯系原作者