Windows 8 应用开发 - 应用栏

原文:Windows 8 应用开发 - 应用栏

     通过应用栏(AppBar)可以在需要时向用户显示各种应用命令。应用栏提供与用户当前页面或当前选定的内容相关的各种命令。默认情况下,应用栏处于隐藏状态。当用户沿屏幕边缘从顶部或底部用手指划动时会显示应用栏,还可以通过单击鼠标右键显示。在用户启动命令、点击应用界面或重复划动手势后,应用栏会自动消失。如果需要进行多选命令操作时,也可以以让应用栏始终可见。

新建应用栏

以下边栏(BottomAppBar)为例,利用AppBar 控件编写一个具有文本编辑功能的应用栏。

<Page.BottomAppBar>
    <AppBar x:Name="BottomAppBar">
        <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="Edit" Style="{StaticResource EditAppBarButtonStyle}" Click="Edit_Button_Click"/>
                <Button x:Name="Save" Style="{StaticResource SaveAppBarButtonStyle}"/>
                <Button x:Name="Delete" Style="{StaticResource DeleteAppBarButtonStyle}"/>
            </StackPanel>
            <StackPanel x:Name="RightPanel" Orientation="Horizontal" Grid.Column="1" HorizontalAlignment="Right">
                <Button x:Name="Refresh" Style="{StaticResource RefreshAppBarButtonStyle}"/>
            </StackPanel>
        </Grid>
    </AppBar>
</Page.BottomAppBar>

     从上面代码可以看出编写应用栏本身并没有什么复杂之处,而且应用栏中使用按键的风格在Win8 应用中也都提供了。在项目工程Common 文件夹中找到StandardStyles.xaml 里面有很多注释掉的ButtonStyle,在里面找到你需要的提出来即可。

编辑应用栏

     接下来,我们在应用界面中添加两个CheckBox:一个用来将应用栏固定,另一个用来新增或删除应用栏按键。

<StackPanel Orientation="Vertical" Grid.Row="1" Margin="120,50,0,0">
    <CheckBox x:Name="IsSticky" Content="IsSticky" Click="IsSticky_Click" />
    <CheckBox x:Name="AddHelpButton" Content="Add Help Button" Click="AddHelpButton_Click" />
</StackPanel>

     两个CheckBox 点击事件代码如下,当应用栏IsSticky 属性激活后,只能通过划动下边屏幕或鼠标右键将取消显示。

private void IsSticky_Click(object sender, RoutedEventArgs e)
{
    CheckBox cb = sender as CheckBox;
    AppBar ap = pageRoot.FindName("BottomAppBar") as AppBar;
    if (ap != null)
    {
        ap.IsSticky = (bool)cb.IsChecked;
    }
}

private void AddHelpButton_Click(object sender, RoutedEventArgs e)
{
    CheckBox cb = sender as CheckBox;
    if ((bool)cb.IsChecked)
    {
        Button helpButton = new Button();
        helpButton.Name = "Help";
        helpButton.Style = App.Current.Resources["HelpAppBarButtonStyle"] as Style;
        RightPanel.Children.Add(helpButton);
    }
    else
    {
        RightPanel.Children.RemoveAt(1);
    }
}

源码下载

http://sdrv.ms/SSPQM2

时间: 2024-07-29 14:21:44

Windows 8 应用开发 - 应用栏的相关文章

Windows Mobile 6开发环境的配置过程

需要的文件列表: 1.Visual Studio 2005 Professional及更高的版本(Visual Studio 2005 Express目前并不支持智能设备开发)(推荐用迅雷或者电骡下). 2.Visual Studio 2005 的补丁SP1 (推荐用迅雷或者电骡下) 3. ActiveSync版本4.5 (http://download.microsoft.com/download/7/e/c/7ecbd388-7fb5-4e3e-b57f-12eaf7eb6136/setup

微软员工证实 Windows 9 正在开发中

尽管Windows 8尚未正式发布,但关于下一代的Windows传闻已经不是一两天的事了.日前,微软员工又向外界证实,微软的确已经开始着手Windows 9的开发了. 微软合作伙伴技术主管James Akrigg日前在英国Misco Expo 12展会上证实,Windows 9将成为该公司的下一个重大项目. 在被问及个人对Windows 8的期望时,Akrigg回应称,Windows 8开发没有达到完美的地步,因为公司现在已经有所分心,开始开发Windows 9. 除此之外,关于之前所曝光的Wi

Windows下Perl开发环境的安装与配置

Perl是一种深受世界各地开发者喜爱的实用摘要和报表语言,虽然它是在Unix上诞生和发展起来的,但在Windows编程领域也已经占有一席之地. 在ActiveState等公司的领导之下,从1995年中期开始Perl开始了稳定地发展,不仅增加了标准的Perl功能,而且增加了许多面向Windows的功能,比如OLE和COM集成等. 事实上,到目前为止所有Perl程序员都已经能够确信,自己为UNIX服务器写的Perl应用移植到Windows服务器后同样能够流畅.稳定地运行,即使是fork实现这类长期以

jQuery 2.0将对Windows 8应用开发提供全面支持

本周,微软宣布著名开源JavaScript库jQuery在2.0版本中即将提供对Windows 8应用开发的全面支持,这对诸多Windows 8应用开发者来说自然又多了个工具.这一消息是微软的互通博客上发出的,博文中指出微软旗下的Open Technologies目前正与appendTo一起为jQuery 2.0提供对Windows 8应用支持做努力,目前jQuery 2.0已经发布了beta版. appendTo的支持主管Jonathan Sampson就此事写道:"jQuery就要为Wind

Windows Server 2008开发指南

透过Windows Server 2008开发指南看到微软服务器系统家族的进步,Windows Server操作系统的市场占有率在逐年上升,这和微软IIS服务器的进步.安全稳定性提升有着密不可分的联系.今天Vista地带帮助大家解析Windows Server 2008 Developer Story . 一.Win2008最重要的变革要数它的核心服务 IIS Internet信息服务器.与上一代Windows Server2003的IIS6相比,IIS7有着什么样的进步呢? 1.增强的安全性和

Silverlight for Windows Phone 7开发系列(3):多媒体开发

前言 在上篇文章讲述了如何新建一个Silverlight for Windows Phone的应用程序,这篇文章讲述如何在Windows Phone上进行多媒体应用的开发.同时介绍当前Windows Phone Beta版本所支持媒体文件格式,以及讲述Windows Phone多媒体开发的一些限制性和注意点. MediaElement控件的使用 使用Silverlight开发一般的多媒体应用,使用MediaElement控件就足够了,MediaElement控件支持音频和视频文件,也支持本地和网

Silverlight for Windows Phone 7开发系列(2):第一个Silverlight程序

前言 上一篇讲述了Windows Phone 7开发环境的搭建,这篇文章讲述如何创建,部署,调试以及运行Silverlight for Windows Phone应用程序,同时介绍如何Microsoft Visual Studio 2010 Express for Windows Phone和Windows Phone Emulator(模拟器)的使用.在文章中会建立一个叫做SilverRadio的Silverlight for Windows Phone应用程序,我把这个程序取名为银光收音机,

Silverlight for Windows Phone 7开发系列(1):环境搭建

前言 随着Windows Phone设备发售日期的临近,作为微软的全新智能设备平台越来越受到关注.我也把重点从Windows Mobile与Windows Embedded CE慢慢转向Windows Phone的开发.因此编写Silverlight for Windows Phone 7开发系列文章,从简单到深入的讲述Silverlight for Windows Phone 的开发.这个系列主要讲述一个网络收音机的开发过程,这一网络收音机程序涉及到Silverlight控件的使用,图片的操作

从0开始做Windows Phone 7开发

简介 本文通过step by step的模式讲述如何从0开始搭建Window Phone 7开发环境 ,如果开发简单的Windows Phone 7程序.只是一篇介绍性的文章,但是迈进 Windows Phone 7开发之路其实就那么简单,一起来开发Windows Phone 7吧. Windows 7安装 目前Windows Phone 7开发环境只是支持Windows 7和Vista,我推荐使用 Windows 7,下面讲述如何搭建Windows 7的环境. 准备条件 1. Windows