Xaml 弹出按钮位于辅助命令后面

Xaml 弹出按钮位于辅助命令后面,xaml,uwp,uwp-xaml,Xaml,Uwp,Uwp Xaml,因此,我想做的是,如果用户想要切换到另一个视频,则提示用户进行第二次确认。所以我添加了一个弹出按钮。然而,在SecondaryCommandsAppBarButton后面出现了飞出。有没有办法把它放在前面 这是我的密码: <CommandBar.SecondaryCommands> <AppBarButton Name="AddImage" Label="Add Image" Click="AddImage_Click" />

因此,我想做的是,如果用户想要切换到另一个视频,则提示用户进行第二次确认。所以我添加了一个弹出按钮。然而,在SecondaryCommandsAppBarButton后面出现了飞出。有没有办法把它放在前面

这是我的密码:

<CommandBar.SecondaryCommands>
            <AppBarButton Name="AddImage" Label="Add Image" Click="AddImage_Click" />
            <AppBarButton Name="AddVideo" Label="Add Video" Click="AddVideo_Click"/>
            <AppBarButton Name="Browse" Label="Browse Videos" >
                <Button.Flyout>
                    <Flyout>
                        <StackPanel>
                            <TextBlock Text="You want to change to another video?"/>
                            <Button Content="Browse video" Click="Browse_Click"/>
                        </StackPanel>
                    </Flyout>
                </Button.Flyout>
            </AppBarButton>
        </CommandBar.SecondaryCommands>
        <CommandBar.Content>
            <TextBlock Name="Status" Text="Video: HoloLens.mp4" Margin="15"/>
        </CommandBar.Content>
    </CommandBar>
</Page.BottomAppBar>

事情就是这样:


对于元素显示,可以这样做。但不使用
弹出按钮

我希望您注意到,当您在
secondary commands
中为
AppBarButton
设置
弹出按钮
属性时,按钮上有一个右箭头。这是一个非常清楚的指示,表示
辅助
菜单

显然,UWP希望获得一个
菜单输出
或其他可以显示多个目录级别的弹出层,而不是包含面板的布局

如果使用
MenuFlyout
,您会发现它出现在顶部

但是如果你坚持你的设计,有很多方法可以做到。当应用程序的最低版本为1809或更高版本时,您可以使用
CommandBarFlyout
通过其
AppBarElementContainer
属性实现您的目的

来自Microsoft.UI.Xaml的
,它看起来更符合您的期望


致意。

第二个命令将显示为弹出型按钮,您不应显示两个弹出型按钮。我想你可以把弹出框改为内容对话框。@lindexi很抱歉,但我似乎不明白你在说什么。是否仍要更改弹出按钮的z位置?放在“添加图像”、“添加视频”和“浏览视频”前面,UWP无法让您这样做。我希望您将弹出按钮替换为内容对话框弹出按钮不是uielement和canvas.zindex只能更改uielement您可以设置边距以使弹出按钮显示在按钮tanks附近吗!这很有帮助。但是作为一个新的程序员,我可以问一下为什么这是一个“违反设计”的行为吗?例如,当你看到一个按钮时,有一个
图标。通常我们都认为这是确认的意思。但是开发者使用这个按钮进行粘贴操作。这给用户的理解造成了障碍。这里也是如此。
secondary命令
相当于一级
MenuFlyout
。当用户注意到
MenuItem
有一个箭头时,通常意味着它有一个折叠菜单,但实际上我们会显示一个弹出框,这也违反了用户习惯。