我成功地做你想做的事,但我并不为解决方案感到自豪......
首先,我创建了一个包含 2 个字符串的对象:
public class Header
{
public string Title { get; set; }
public string Subtitle { get; set; }
}
然后在资源中的 XAML 中创建对象(或者您可以通过视图模型绑定它们)
<phone:PhoneApplicationPage.Resources>
<poc:Header x:Key="FirstHeader" Title="first" Subtitle="first subtitle"/>
<poc:Header x:Key="SecondHeader" Title="second" Subtitle="second subtitle"/>
</phone:PhoneApplicationPage.Resources>
绑定每个数据透视项上的对象:
<phone:PivotItem Header="{StaticResource FirstHeader}">
然后像这样设置 Pivot.HeaderTemplate 的样式:
<phone:Pivot.HeaderTemplate>
<DataTemplate>
<StackPanel Orientation="Vertical">
<TextBlock Text="{Binding Title}" Foreground="White"/>
<TextBlock Text="{Binding Subtitle}" FontSize="18" Foreground="White"/>
</StackPanel>
</DataTemplate>
</phone:Pivot.HeaderTemplate>
通过修改 Pivot 和 PivotItem 的行为可以实现更好的解决方案,但我没有成功更改 Pivot.HeaderTemplate 和 PivotItem 之间的绑定。