Windows phone 8.1 在WP 8.1中,我无法为命令栏中的AppBarButton应用自定义样式

Windows phone 8.1 在WP 8.1中,我无法为命令栏中的AppBarButton应用自定义样式,windows-phone-8.1,styling,appbar,commandbar,Windows Phone 8.1,Styling,Appbar,Commandbar,我有一个非常具体的问题。我找不到这个确切问题的任何答案,所以我使用了试错法来确定问题。下面是我遇到问题的示例代码: <Page.BottomAppBar> <CommandBar x:Name="MainMenuCommandBar" ClosedDisplayMode="Minimal"> <CommandBar.PrimaryCommands> <AppBarButton x:Name="otherCo

我有一个非常具体的问题。我找不到这个确切问题的任何答案,所以我使用了试错法来确定问题。下面是我遇到问题的示例代码:

<Page.BottomAppBar>
    <CommandBar x:Name="MainMenuCommandBar" ClosedDisplayMode="Minimal">
        <CommandBar.PrimaryCommands>
            <AppBarButton x:Name="otherCommandButton" Label="Egyéb" Icon="List" Click="otherCommandButton_Click" Style="{StaticResource appbarButton}">
                <AppBarButton.Flyout>
                    <MenuFlyout>
                        <MenuFlyoutItem x:Name="SecondaryFlyout1" Text="Névjegy" Style="{StaticResource BottomAppBarFlyoutStyle}"/>
                        <MenuFlyoutItem x:Name="SecondaryFlyout2" Text="Adatbázis mentés" Style="{StaticResource BottomAppBarFlyoutStyle}"/>
                        <MenuFlyoutItem x:Name="SecondaryFlyout3" Text="Adatbázis visszaállítás" Style="{StaticResource BottomAppBarFlyoutStyle}"/>
                        <MenuFlyoutItem x:Name="SecondaryFlyout4" Text="Terminál törlése" Style="{StaticResource BottomAppBarFlyoutStyle}"/>
                        <MenuFlyoutItem x:Name="SecondaryFlyout5" Text="Jelszavas védelem" Style="{StaticResource BottomAppBarFlyoutStyle}"/>
                        <MenuFlyoutItem x:Name="SecondaryFlyout6" Text="Nyelv váltás" Style="{StaticResource BottomAppBarFlyoutStyle}"/>
                        <MenuFlyoutItem x:Name="SecondaryFlyout7" Text="Betűméret" Style="{StaticResource BottomAppBarFlyoutStyle}"/>
                        <MenuFlyoutItem x:Name="SecondaryFlyout8" Text="Kilépés" Style="{StaticResource BottomAppBarFlyoutStyle}"/>
                    </MenuFlyout>
                </AppBarButton.Flyout>
            </AppBarButton>
            <AppBarButton x:Name="refreshCommandButton" Label="Frissítés(Bank)" Icon="Refresh" Style="{StaticResource appbarButton}"/>
            <AppBarButton x:Name="syncCommandButton" Label="Szinkronizál(PC)" Icon="Sync" Style="{StaticResource appbarButton}"/>
        </CommandBar.PrimaryCommands>
    </CommandBar>
</Page.BottomAppBar>

我想为命令栏中的AppBarButton应用自定义样式,因为标签中的文本太长,我看不到整个文本。所以我想,我会让文本变小,或者让appbarbutton变宽。设计师向我展示了更改,但当我运行程序时,没有任何更改。无论我做什么,appbarbuttons都使用默认样式。所以当我运行程序时,文本不会变小

在这之后,我试图找出问题所在。我也试图编辑模板,但是“编辑副本”命令变灰了。我觉得这很奇怪,因为我浏览了MSDN,在那里我看到appbarbuttons实际上有一个我可以编辑的样式。我复制了默认样式,进行了更改,并将其作为自定义样式应用到我的app.xaml中,但遇到了与以前相同的问题。没什么变化,不管我改变了什么风格。在所有这些失败之后,我在命令栏外放置了一个appbarbutton。在这种情况下,一切正常。我可以编辑模板的副本,并且这些更改会在我运行程序时反映出来。另一个奇怪的情况是,menuflyoutitem可以在commandbar中设置样式


对不起,解释得太长了,我想把我已经知道的告诉大家。简言之,我的问题是,有没有办法在命令栏中设置appbarbutton的样式?或者,如果没有,是否有其他方法来创建自定义命令栏?

Windows Phone上的命令栏是系统UI,应用程序无法对其进行自定义,只能设置其前景和背景颜色


如果您想自定义单个按钮,您需要为它们实现自己的面板,而不是使用应用程序栏。您可以在页面底部放置一个水平堆栈面板,并在其中包含自定义的AppBarButton。如果你想让它穿鞋和隐藏,你需要设置自己的逻辑来检测触发输入,然后应用动画将其打开和关闭。

Windows Phone上的CommandBar是系统UI,应用程序无法自定义它的前景和背景色

如果您想自定义单个按钮,您需要为它们实现自己的面板,而不是使用应用程序栏。您可以在页面底部放置一个水平堆栈面板,并在其中包含自定义的AppBarButton。如果您想让它穿鞋和隐藏,您需要设置自己的逻辑来检测触发输入,然后应用动画将其打开和关闭