我正在使用C#和XAML使用Visual Studio 2011 Beta开发Metro风格的应用程序。我想在页面底部显示一个AppBar。
根据一些消息来源,我将不得不在<Page.BottomAppBar>...</Page.BottomAppBar>
标签内编写AppBar Control标签。
但是在这样做时,XAML页面上会生成错误,并说:
页面无法识别BottomAppBar。
请帮我解决这个问题。谢谢。
答案 0 :(得分:2)
更新:尽管最初发布的方法适用于大多数情况,但不推荐使用appbar动画,点击测试时出现问题...而不是Page {TopApp.BopAppBar和Page.BottomAppBar,如{{{应该使用3}}。
您只需将appbar的垂直对齐方式设置为底部:
<AppBar Grid.Row="1" HorizontalContentAlignment="Stretch" Height="88" VerticalContentAlignment="Stretch" VerticalAlignment="Bottom">
...
</Appbar>
另外,确保appbar嵌入在屏幕底部的元素中。这意味着对于标准页面(具有2行的网格),appbar必须嵌入第二行(Grid.Row = 1)。
最后一件事是你必须确保appbar在Z-order中是最顶层的。为此,您必须在xaml文件的末尾添加底部应用栏。这意味着如果你有类似的东西:
<GridView Grid.Row="1">...</GridView>
你必须订购控件linke:
<GridView Grid.Row="1">...</GridView>
<AppBar Grid.Row="1">...</AppBar>
答案 1 :(得分:2)
这是BottomAppBar的一个例子:
<Page.BottomAppBar>
<AppBar x:Name="MyappBar" Padding="10,0,10,0"
BorderThickness="0"
Opened="AppBar_Opened" Closed="AppBar_Closed" >
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="50*"/>
<ColumnDefinition Width="50*"/>
</Grid.ColumnDefinitions>
<StackPanel x:Name="LeftPanel" Orientation="Horizontal" Grid.Column="0" HorizontalAlignment="Left">
<Button x:Name="btnEdit" Style="{StaticResource EditAppBarButtonStyle}"/>
<Button x:Name="btnSave" Style="{StaticResource SaveAppBarButtonStyle}"/>
</StackPanel>
<StackPanel x:Name="RightPanel" Orientation="Horizontal" Grid.Column="1" HorizontalAlignment="Right">
<Button x:Name="btnPhoto" Style="{StaticResource PhotoAppBarButtonStyle}" Click="CapturePhoto_Click" />
<Button x:Name="btnHelp" Style="{StaticResource HelpAppBarButtonStyle}"/>
</StackPanel>
</Grid>
</AppBar>
</Page.BottomAppBar>
尝试将</Page.Resources>
放在xaml文件中。
请务必取消注释 Common 文件夹中 StandardStyles.xaml 中的按钮样式。