创建一个新的空白UWP应用并在主页内添加一个没有子项但具有绿色背景的Pivot控件。然后添加一个视觉状态,根据窗口宽度将Pivot的背景更新为黄色......
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup>
<VisualState>
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowWidth="641"/>
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="Pivot.Background" Value="Yellow"/>
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Pivot x:Name="Pivot"
Background="Green"
</Pivot>
</Grid>
当窗口大于 641 像素时,背景变为黄色,如果您将大小调整到 641 以下,则变为绿色。继续拖动窗口大小,它会随着您的进行动态更新,正如您所期望的那样。
但..
一旦您将PivotItem添加到控件中,它就不再起作用...
<Pivot x:Name="Pivot"
Background="Green"
<PivotItem>
<TextBlock>Test</TextBlock>
</PivotItem>
</Pivot>
首次运行时,背景为黄色,因为默认窗口大小超过 641 像素宽。将窗口大小调整到 641 以下,它会恢复为绿色。但是从现在开始,它会保持绿色,并且在调整大小时永远不会变回黄色。
对我来说似乎是一个错误,但也许其他人可以看到我犯的明显错误?