Windows Phone 8中的应用栏

时间:2014-07-01 07:13:01

标签: windows-phone-8 appbar

问候。

我试图将应用栏添加到Windows Phone 8(VS 2013& framework 4.5)应用程序中。

<phone:PhoneApplicationPage.ApplicationBar>
        <shell:ApplicationBar IsVisible="True" IsMenuEnabled="True" Mode="Default" Opacity="1.0" >

            <shell:ApplicationBarIconButton IconUri="/Images/save.png" Text="save" Click="Button1_Click" />
            <shell:ApplicationBarIconButton IconUri="/Images/delete.png" Text="delete" Click="Button2_Click" />
            <shell:ApplicationBarIconButton IconUri="/Images/help.png" Text="help" Click="Button3_Click" />
            <shell:ApplicationBarIconButton IconUri="/Images/settings.png" Text="settings" Click="Button4_Click" />

            <shell:ApplicationBar.MenuItems>
                <shell:ApplicationBarMenuItem Text="get default size value" Click="MenuItem1_Click" />
                <shell:ApplicationBarMenuItem Text="get mini size value" Click="MenuItem2_Click" />
            </shell:ApplicationBar.MenuItems>

        </shell:ApplicationBar>
    </phone:PhoneApplicationPage.ApplicationBar>

应用栏按钮将显示在此特定页面中,但在其他页面中则不可见。我们如何才能使应用栏及其按钮显示为全局

提前感谢你 塞巴斯蒂安

2 个答案:

答案 0 :(得分:2)

您需要创建可在多个页面上重复使用的全局应用程序栏。通常我们在要使用它的页面上创建一个应用程序栏,它仅适用于该页面。出于此目的,这是一个很好的示例create a global Application Bar ,您需要通过在App.xaml中使用XAML来创建全局应用程序栏,如示例所示。

or

您需要在所有单独的页面中编写相同的AppBar代码,以便按照您在问题中描述的方式将其显示在所有页面上

答案 1 :(得分:0)

您也可以通过编程方式创建它并在App.xaml.cs中存储对它的引用,并将其插入每个页面,在构造函数中,如下所示:

this.ApplicationBar = App.GlobalAppBar;

创作很简单:

ApplicationBarIconButton firstButton = new ApplicationBarIconButton();
firstButton.IconUri = new Uri("/Images/save.png", UriKind.Relative);
firstButton.Click += Button1_Click;
firstButton.Text = "save";
GlobalAppBar = new ApplicationBar();
GlobalAppBar.Buttons.Add(firstButton);