菜单项中的Windows 10 UWP应用程序菜单弹出窗口

时间:2015-11-20 01:31:44

标签: c# xaml uwp

是否可以在菜单弹出项目中添加菜单?

        <AppBarButton x:Name="Button" Icon="Add" Label="Create List">
            <AppBarButton.Flyout>
                <MenuFlyout>
                    <MenuFlyoutItem Text="b1">
                        <FlyoutBase.AttachedFlyout>
                            <MenuFlyout x:Name="ItemsMenu" Placement="Left">
                                <MenuFlyoutItem Text="test1"/>
                                <MenuFlyoutItem Text="test2"/>
                            </MenuFlyout>
                        </FlyoutBase.AttachedFlyout>
                    </MenuFlyoutItem>
                    <MenuFlyoutItem Text="b2" />
                    <MenuFlyoutItem Text="b3" />
                    <MenuFlyoutItem Text="b4" />
                    <MenuFlyoutItem Text="b5" />
                </MenuFlyout>
            </AppBarButton.Flyout>
        </AppBarButton>

点击该项目只会使菜单消失。我尝试在鼠标指针上调用ItemsMenu.ShowAt()但是当我将鼠标悬停在它上面时它只会使菜单消失。有人有主意吗?

1 个答案:

答案 0 :(得分:3)

我已经尝试过您的代码,但无法使其正常工作,因此我想出了一种解决方法,我希望这会为您提供一些灵感:

<Page.Resources>
    <CollectionViewSource x:Key="cvs" x:Name="cvs" IsSourceGrouped="True"/>
    <Flyout x:Key="DeclarativeAttachedFlyout">
        <StackPanel>
            <Button Content="b1">
                <Button.Flyout>
                    <MenuFlyout>
                        <MenuFlyoutItem Text="t1"></MenuFlyoutItem>
                        <MenuFlyoutItem Text="t2"></MenuFlyoutItem>
                        <MenuFlyoutItem Text="t3"></MenuFlyoutItem>
                        <MenuFlyoutItem Text="t4"></MenuFlyoutItem>
                    </MenuFlyout>
                </Button.Flyout>
            </Button>
            <Button Content="b2"></Button>
            <Button Content="b3"></Button>
            <Button Content="b4"></Button>
            <Button Content="b5"></Button>
        </StackPanel>
    </Flyout>

 <MenuFlyout x:Key="DeclarativeAttachedFlyout2">
        <MenuFlyoutItem Text="b1" ></MenuFlyoutItem>
        <MenuFlyoutItem Text="b2" ></MenuFlyoutItem>
        <MenuFlyoutItem Text="b3" ></MenuFlyoutItem>
        <MenuFlyoutItem Text="b4" ></MenuFlyoutItem>
        <MenuFlyoutItem Text="b5" ></MenuFlyoutItem>
        <MenuFlyoutSubItem Text="s1">
            <MenuFlyoutItem Text="b6"></MenuFlyoutItem>
        </MenuFlyoutSubItem>
    </MenuFlyout>
</Page.Resources>
<AppBarButton x:Name="button" Icon="Add" Label="Create List" Flyout="{StaticResource DeclarativeAttachedFlyout}"> </AppBarButton>
<AppBarButton x:Name="button" Icon="Add" Label="Create List" Flyout="{StaticResource DeclarativeAttachedFlyout2}"> </AppBarButton>

以下是flyout的详细说明,您可以点击this