2

创建一个新的空白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 以下,它会恢复为绿色。但是从现在开始,它会保持绿色,并且在调整大小时永远不会变回黄色。

对我来说似乎是一个错误,但也许其他人可以看到我犯的明显错误?

4

0 回答 0