相同的应用程序栏,适用于不同的xaml页面Windows Phone 8

时间:2013-08-28 10:47:13

标签: xaml windows-phone-8

对于WP8应用程序,我必须为不同的页面创建相同的应用程序栏,我是否需要在Xaml中为所有页面创建它,或者有任何方法可以定义它并使用它...

1 个答案:

答案 0 :(得分:1)

您可以像这样在App.xaml中定义您的appbar ..

 <Application.Resources>
    <local:LocalizedStrings xmlns:local="clr-namespace:PhoneApp12" x:Key="LocalizedStrings"/>
    <shell:ApplicationBar x:Key="GlobalAppBar" IsVisible="True" IsMenuEnabled="True" BackgroundColor="Black" ForegroundColor="White">
        <shell:ApplicationBarIconButton x:Name="asd" IconUri="/1.png" Text="0"  />
        <shell:ApplicationBarIconButton IconUri="/1.png" Text="1" />
        <shell:ApplicationBarIconButton IconUri="/1.png" Text="2"  />
        <shell:ApplicationBarIconButton IconUri="/1.png" Text="3"  />
    </shell:ApplicationBar>
</Application.Resources>

并在您的xaml页面上添加此内容。

ApplicationBar = "{StaticResource GlobalAppBar}"

所以你的page.xaml顶部看起来像这样..

<phone:PhoneApplicationPage
x:Class="PhoneApp12.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
 **ApplicationBar = "{StaticResource GlobalAppBar}"**
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
SupportedOrientations="Portrait" Orientation="Portrait"
shell:SystemTray.IsVisible="True">

希望对你有帮助..