将弹出菜单添加到AppBarButton

时间:2013-10-02 15:46:27

标签: c# windows-8 windows-store-apps

我想在appBar(底部appBar)的按钮中添加一个上下文菜单。我的min SDK是Windows 8.0。我希望MSDN提供类似这样的弹出窗口:

msdn-popup-menu

不幸的是我无法使用MenuFlyout,因为它仅适用于Windows 8.1+,所以我想以另一种方式实现此菜单。如果你知道怎么做,请告诉我。

以下是我的底栏:

<common:LayoutAwarePage.BottomAppBar>
    <AppBar x:Name="bottomAppBar" Padding="10,0,10,0" DataContext="{Binding}">
        <Grid>
            <StackPanel Orientation="Horizontal" HorizontalAlignment="Left">
                <Button Style="{StaticResource EditAppBarButtonStyle}" Click="EditQuote_Click"/>
                <Button Style="{StaticResource RemoveAppBarButtonStyle}" Click="RemoveQuote_Click"/>
                <Button Style="{StaticResource AddAppBarButtonStyle}" Click="AddQuote_Click"/>
            </StackPanel>
            <StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
                <Button Style="{StaticResource HelpAppBarButtonStyle}"/>
            </StackPanel>
        </Grid>
    </AppBar>

2 个答案:

答案 0 :(得分:2)

您应该在以下位置查看“弹出设置”示例:

http://code.msdn.microsoft.com/windowsapps/Settings-Flyout-eceaafea

或者,如果您的目标是Windows 8.1,弹出窗口变得更加容易,请查看MenuFlyout元素:

http://msdn.microsoft.com/en-us/library/windows/apps/bg182878.aspx#menuflyout

答案 1 :(得分:1)

我会看看Nuget上的Callisto库。它由Tim Heuer建立,他是微软xaml团队的一员,填补了8.0控制集中的一些空白。它包括一个Menu Flyout控件,看起来并不像8.1中添加的控件那样巧合。

项目中的示例应用程序包含您要查找的内容的示例(来自应用程序栏的菜单弹出窗口)。

编辑:如果您的项目定位于Windows 8.1,则菜单弹出控件现已内置于平台中。