萬盛學電腦網

 萬盛學電腦網 >> windows 8技巧 >> Windows 8+VS 開發教程SemanticZoom縮放視圖

Windows 8+VS 開發教程SemanticZoom縮放視圖

 在Windows 8中SemanticZoom縮放視圖支持對GridView和ListView控件的視圖效果進行縮放,它提供一個詳細信息視圖(ZoomedInView)以讓用戶查看詳細信息,另外提供一個縮小索引視圖(ZoomedOutView)讓用戶快速定位想要查看信息的大概范圍。

  一.想要實現這種效果我們需要使用SemanticZoom控件和CollectionViewSource控件配合使用:

    SemanticZoom控件:

  1. <SemanticZoom.ZoomedOutView> 
  2.    <!--此處填充縮小索引視圖的GridView,一般情況下綁定Group.Title--> 
  3. </SemanticZoom.ZoomedOutView> 
  4. <SemanticZoom.ZoomedInView> 
  5.     <!--此處填充平常普通的GridView,顯示詳細信息--> 
  6. </SemanticZoom.ZoomedInView> 

    CollectionViewSource是一個和前台UI控件進行互動的集合源。

      Source:源數據綁定屬性

      IsSourceGrouped:是否允許分組

      View:獲取當前與 CollectionViewSource 的此實例關聯的視圖對象

       View.CollectionGroups:返回該視圖關聯的所有集合組。

  二.現在通過一個實例來看如何使用SemanticZoom實現縮放視圖,本實例接前一篇文章實例。

    1.前台設置CollectionViewSource控件

  1. <Grid.Resources> 
  2.     <CollectionViewSource x:Name="itemcollectSource" IsSourceGrouped="true" ItemsPath="ItemContent" /> 
  3. </Grid.Resources> 

    2.前台繪制ZoomedInView視圖和ZoomedOutView視圖GridView

  1. <SemanticZoom x:Name="semanticZoom" VerticalAlignment="Center"> 
  2.             <SemanticZoom.ZoomedOutView> 
  3.                 <GridView ScrollViewer.IsHorizontalScrollChainingEnabled="False" > 
  4.                     <GridView.ItemTemplate> 
  5.                         <DataTemplate> 
  6.                             <!--注意此處綁定的是實體集的GroupTitle屬性--> 
copyright © 萬盛學電腦網 all rights reserved