对于 WP8 应用程序,我必须为不同的页面创建相同的应用程序栏,我是否需要在 Xaml 中为所有页面创建它,或者有任何方法可以定义一次并在整个应用程序中使用它。
问问题
842 次
1 回答
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">
希望对你有帮助。。
于 2013-08-28T11:12:23.977 回答