好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

WPF与Surface2.0SDK亲密接触–LibraryStack篇

LibraryStack 本身属于ItemsControl,可以将其他组件以一种集合的方式显示出来,用户可以在LibraryStack 中逐一浏览如图片类的组件,而且它默认支持拖拽操作。 在下面的例子中我们将通过LibraryStack 展示一组图片。首先,为LibraryStack 编写一个DataTemplat

LibraryStack 本身属于ItemsControl,可以将其他组件以一种集合的方式显示出来,用户可以在LibraryStack 中逐一浏览如图片类的组件,而且它默认支持拖拽操作。

在下面的例子中我们将通过LibraryStack 展示一组图片。首先,为LibraryStack 编写一个DataTemplate 用来绑定图片样式。接下来在Grid 中添加LibraryStack 控件,并设置好数据模板。

   s  :  SurfaceWindow   x  :  Class  ="Demo.SurfaceWindow1"
      xmlns  ="http://schemas.microsoft测试数据/winfx/2006/xaml/presentation"
      xmlns  :  x  ="http://schemas.microsoft测试数据/winfx/2006/xaml"
      xmlns  :  s  ="http://schemas.microsoft测试数据/surface/2008"
      Title  ="LibraryStack"
>
      s  :  SurfaceWindow.Resources  >
          DataTemplate   x  :  Key  ="ItemTemplate">
              Image   Source  ="{  Binding  }"/>
          DataTemplate  >
      s  :  SurfaceWindow.Resources  >

      Grid  >
          s  :  LibraryStack   x:Name  ="mLibraryStack" 
                          ItemTemplate  ="{  StaticResource   ItemTemplate  }"/>
      Grid  >
  s  :  SurfaceWindow  >
  

最后,为LiraryStack 添加数据源。注意,不能将图片string[] 数组直接赋给LiraryStack,需要借助ObservableCollection。

 string  imagesPath =  @"C:\Users\Public\Pictures\Sample Pictures\" ;
 try
 {
     string [] files = System.IO. Directory .GetFiles(imagesPath,  "*.jpg" );
     ObservableCollection  string > items =  new   ObservableCollection  string >(files);
    mLibraryStack.ItemsSource = items;
}
 catch  (System.IO. DirectoryNotFoundException )
{
     // Error info.
 } 

运行界面:

作者:李敬然(Gnie)
出处:{GnieTech} (http://HdhCmsTestcnblogs测试数据/gnielee/)

查看更多关于WPF与Surface2.0SDK亲密接触–LibraryStack篇的详细内容...

  阅读:45次