2016-05-03 54 views
0

我有一個條件,我想添加多個PivotItems(這是動態的)。 ie;我有一個大小爲動態的List<CustomModel>,並且對於列表中的每個項目,我想創建一個帶有CustomModel.Title標題的PivotItem。如何在winrt UWP中使用DataTemplate添加多個樞軸?

是否有可能通過創建DataTemplate並將其綁定到Pivot來單獨實現xaml?

+0

綁定列表,以樞軸的的ItemSource。使ObservableCollection代替列表 – Archana

+0

樞軸如何知道綁定哪個參數?你能給我一個xaml的例子嗎? – AbsoluteSith

+0

什麼是custommodel?你不會知道它的屬性? – Archana

回答

2

這當然是可能的。請參見下面的樣品溶液

<Pivot x:Name="TestPivot"> 
    <Pivot.HeaderTemplate> 
     <DataTemplate x:DataType="local:TestClass"> 
      <TextBlock Text="{Binding HeaderTitle, Mode=OneWay}"/> 
     </DataTemplate> 
    </Pivot.HeaderTemplate> 
    <Pivot.ItemTemplate> 
     <DataTemplate x:DataType="local:TestClass"> 
      <Grid> 
       <TextBlock Text="{Binding Content, Mode=OneWay}"/> 
      </Grid> 
     </DataTemplate> 
    </Pivot.ItemTemplate> 
</Pivot> 

代碼後面用於模擬結合

public sealed partial class BlankPage6 : Page 
{ 
    ObservableCollection<TestClass> SampleSource = new ObservableCollection<TestClass>(); 
    public BlankPage6() 
    { 
     this.InitializeComponent(); 
     SampleSource.Add(new TestClass { HeaderTitle = "Test Header1", Content = "Test content 1" }); 
     SampleSource.Add(new TestClass { HeaderTitle = "Test Header2", Content = "Test content 2" }); 
     SampleSource.Add(new TestClass { HeaderTitle = "Test Header3", Content = "Test content 3" }); 

     TestPivot.ItemsSource = SampleSource; 
    } 
} 

public class TestClass 
{ 
    public string HeaderTitle { get; set; } 
    public string Content { get; set; } 
} 

輸出: enter image description here