2016-09-22 87 views
0

我將數據綁定到UWP中的透視元素。數據顯示在標題模板中,但是當我試圖在項目模板裏面顯示時,數據是相同的,它沒有被顯示。這是爲什麼發生?此外,網格視圖外的項目模板中也會顯示相同的數據。來自同一來源的數據顯示在數據透視表頭中,但不顯示在數據透視表模板中

<Pivot x:Name="Pivot1" ItemsSource="{Binding Store_Product_x}" SelectionChanged="Pivot1_SelectionChanged"> 
       <Pivot.HeaderTemplate> 
        <DataTemplate > 
         <TextBlock Text="{Binding Course_Header}"/> 
        </DataTemplate> 
       </Pivot.HeaderTemplate> 
       <Pivot.ItemTemplate> 
        <DataTemplate> 
         <!--<TextBlock Text="{Binding Course_Header}"/>--> 
         <GridView ItemsSource="{Binding Store_Product_x}"> 
          <GridView.ItemTemplate> 
           <DataTemplate> 
            <TextBlock Text="{Binding Course_Header}"/> 
           </DataTemplate> 
          </GridView.ItemTemplate> 
         </GridView> 
        </DataTemplate> 
       </Pivot.ItemTemplate> 
      </Pivot> 

回答

0

Pivot對於一PivotHeader對應一個PivotItem。而在你的代碼中,一個PivotItem也對應一個GridView。如果上面的代碼可以運行並符合您的要求,那麼GridView將只在每個PivotItem下有一個項目,並且值與PivotHeader相同,那麼爲什麼我們需要GridView

例如,itemsource Store_Product_x有兩條記錄,並且您綁定到Pivot。所以Pivot將有兩個項目顯示標題。第一項是Store_Product_x的綁定記錄1,第二項是綁定記錄2的Store_Product_x。同時,在每個項目下,您都有一個GridView。第一個GridView與第一個記錄1的項目具有相同的來源,它如何綁定Store_Product_x其中包含記錄1?

請清楚你的代碼中的PivotItemGridViewItems是1對多關係。你上面的代碼顯然是錯誤的。請參考我之前提到的嵌套綁定。

如果你不能想出一個正確的結構來滿足你的要求,你可以考慮改變控制。

相關問題