摸索出了問題 - 見接受的答案了很好的解釋!
我的XAML現在看起來是這樣的:
<controls:Pivot x:Name="MainPivot" Title="FYP APP" ItemsSource="{Binding Cuisines}">
<controls:Pivot.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding Cuisine}"/>
</DataTemplate>
</controls:Pivot.HeaderTemplate>
<controls:Pivot.ItemTemplate>
<DataTemplate>
<ListBox Margin="0,0,-12,0" ItemsSource="{Binding Outlets}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Margin="0,0,0,17" Width="432" Height="78">
<TextBlock Text="{Binding Name}" TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}"/>
<TextBlock Text="{Binding Cuisine}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</DataTemplate>
</controls:Pivot.ItemTemplate>
</controls:Pivot>
原文:
我建設使用示例一個樞軸頁面提供VS.
我有一個餐館列表,我希望能夠通過左右滑動(例如http://img831.imageshack.us/img831/514/pivotm.jpg)來進行過濾。
我把所有的餐館在App.xaml.cs
列表(public static ObservableCollection<OutletViewModel> LocalOutlets
它從構造的MainPage填寫),然後將此處理以創建這種結構:
OutletListPage2.xaml.cs
(我工作的頁面)設置DataContext
更改爲新的OutletsByCuisineViewModel()
。
OutletsByCuisineViewModel
有一個public ObservableCollection<CuisineViewModel> Cuisines
,其中包含一個CuisineViewModel
每個美食(包括一個「全部」)。
A CuisineViewModel
具有public string Cuisine
和public ObservableCollection<OutletViewModel> Outlets
。
OutletViewModel
包含一個public string Name
和一個public string Cuisine
- 每個觸發PropertyChanged
事件。
我想用設計樣本數據是:(也,我不能在這個文件中多次指定同一插座 - VS名稱XYZ表示已經在當前的名字範圍存在)
<local:OutletsByCuisineViewModel
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:FYP.ViewModels">
<local:OutletsByCuisineViewModel.Cuisines>
<local:CuisineViewModel Cuisine="all">
<local:CuisineViewModel.Outlets>
<local:OutletViewModel Name="Test1" Cuisine="fast food" />
<local:OutletViewModel Name="Test2" Cuisine="indian" />
<local:OutletViewModel Name="Test3" Cuisine="pizza" />
</local:CuisineViewModel.Outlets>
</local:CuisineViewModel>
<local:CuisineViewModel Cuisine="fast food">
<local:CuisineViewModel.Outlets>
<local:OutletViewModel Name="Test1a" Cuisine="fast food" />
</local:CuisineViewModel.Outlets>
</local:CuisineViewModel>
<local:CuisineViewModel Cuisine="indian">
<local:CuisineViewModel.Outlets>
<local:OutletViewModel Name="Test2a" Cuisine="indian" />
</local:CuisineViewModel.Outlets>
</local:CuisineViewModel>
<local:CuisineViewModel Cuisine="pizza">
<local:CuisineViewModel.Outlets>
<local:OutletViewModel Name="Test3a" Cuisine="pizza" />
</local:CuisineViewModel.Outlets>
</local:CuisineViewModel>
</local:OutletsByCuisineViewModel.Cuisines>
</local:OutletsByCuisineViewModel>
我在XAML設計如下 - http://img844.imageshack.us/img844/8464/pivot2.jpg
我一直沒能找到任何在線可能的幫助,可能是因爲我不知道什麼是錯的。
任何建議或指針將不勝感激:)
我今天又看了一遍,並解決了這個問題,但這是我做的,所以接受這個答案:) – Josh 2012-02-16 14:04:07