2014-04-08 104 views
0

使用MVVM框架測試Windows Phone 8應用程序。在Windows Phone 8中更改滑動的詳細頁面數據

ListPage.xaml:

<phone:PanoramaItem x:Name="mpnP" Width="475"> 
    <Grid Style="{StaticResource GridPanoPage}" > 
     <ListBox x:Name="pkList" Style="{StaticResource ListBoxHeadlines}" > 
      <ListBox.ItemTemplate> 
       <DataTemplate > 
        <ListBoxItem Style="{StaticResource ListBoxItemHub}"> 
         <StackPanel Orientation="Horizontal"> 
          <Image x:Name="pkImage" Source="{Binding ImagePath}" /> 
          <StackPanel> 
           <TextBlock x:Name="pkHead" Text="{Binding Head}"/> 
          </StackPanel> 
         </StackPanel> 
        </ListBoxItem> 
       </DataTemplate> 
      </ListBox.ItemTemplate> 
     </ListBox> 
    </Grid> 
</phone:PanoramaItem> 

在列表框中選擇改變,導航到詳細信息頁面的ID-

if (!string.IsNullOrEmpty(Session.ID)) 
NavigationService.Navigate(new Uri("/Views/Detail.xaml", UriKind.Relative)); 

現在我想轉到輕掃屏幕上的下一個ID的基礎上。表示 - 如果ID - 3當前在屏幕上,並且用戶在屏幕上滑動,則下一個ID細節將顯示在屏幕上。 這個過程完成直到列表框最後的id。

回答

0

在詳細信息頁面上,可以藉助FlipView在幾個項目之間導航。並且每次發生SelectionChange事件時都會更改ViewModel中的Id。

<toolkit:FlipView x:Name="FlipViewImages" ItemsSource="{Binding Images}" > 
      <toolkit:FlipView.ItemTemplate> 
       <DataTemplate> 
        <utils:ImageZoomControl Url="{Binding}"/> 
       </DataTemplate> 
      </toolkit:FlipView.ItemTemplate> 
      <toolkit:FlipView.ItemsPanel> 
       <ItemsPanelTemplate> 
        <VirtualizingStackPanel Orientation="Horizontal"/> 
       </ItemsPanelTemplate> 
      </toolkit:FlipView.ItemsPanel> 
     </toolkit:FlipView> 

FlipView不是本機控件,您必須通過nuget Manager,Windows Phone ToolKit導入。 如果您的物品來源是對象列表,則不需要執行其他任何操作。

相關問題