Windows Phone8.1中的CommandBar

开篇之前:

若对Windows 8.1的相关Appbar和CommandBar控件感兴趣,强烈推荐王磊老师的博客园

链接:重新想象 Windows 8.1 Store Apps (72) - 新增控件: AppBar, CommandBar

以及不知道名字的博主对WP8.1中Appbar阐述的一篇文章:http://www.dotblogs.com.tw/eternaltung/archive/2014/05/07/wpappbar.aspx

好了,下面就Windows Phone8.1,以及看了以上两位的文章之后,列举下我的感悟:

WP8.1中只有BottomAppBar,没有TopAppBar。因为就人体体验和美感来说,将Appbar设计到手机到上方并不人性化。

CommandBar控件有几个很有用也很让人糊涂的属性

1.ClosedDisplayMode

设为Minimal则将Appbar隐藏到最小;设为Compact则将Appbar正常显示,如下图所示:

                     

2.PrimaryCommands和SecondaryCommands属性

Windows 8.1中两个属性就是字面上的意思,一前一后,从左往右排列

Windows Phone 8.1中前者还是按照从左往右排序的,而后者并不是继续排列下去,而是变成MenuItem列表的形式,如下图区别:

<span style="font-size:18px;"><Page.BottomAppBar>
        <CommandBar x:Name="commonBar" IsSticky="True" ClosedDisplayMode="Compact">
            <AppBarToggleButton Icon="Like" Label="Like"/>
            <AppBarToggleButton Icon="Dislike" Label="Dislike"/>
            <AppBarButton Icon="Library" Label="Library"/>
            <AppBarButton Icon="Stop" Label="Stop"/>
            <!--以上部分没写在CommandBar.PrimaryCommands中,但默认自动添加进其中-->
            <CommandBar.SecondaryCommands>
                <AppBarButton Icon="Like" Label="Like"/>
                <AppBarButton Icon="Dislike" Label="Dislike"/>
                <AppBarButton Icon="Library" Label="Library"/>
                <AppBarButton Icon="Stop" Label="Stop"/>
            </CommandBar.SecondaryCommands>
        </CommandBar>
    </Page.BottomAppBar></span>

3.IsSticky和IsOpen属性

这部分请参考微软MSDN上给出的解释,很详细很好

链接:AppBar Class

IsOpen属性:获取或设置指示AppBar是否可见的值

IsSticky属性:获取或设置指示 AppBar是否在光消散时不关闭的值

默认情况下,应用程序栏会在用户在应用程序栏之外的任何位置与您的应用程序交互时关闭。这称为光消散。要使命

令可见,可以通过将 IsSticky 属性设置为
true
来更改关闭

模式。当应用程序条是便笺,并且仅在用户右击、按下 Windows+Z 或从屏幕的顶边或下边重击时关闭

OnClosed方法:在 AppBar从可见更改为隐藏时调用

OnOpened方法:Invoked when the AppBar changes from hidden to visible, or is first displayed

Closed事件:在 AppBar 从可见更改为隐藏时发生

Opened事件:在 AppBar 从隐藏更改为可见时发生

时间: 2024-08-02 19:57:38

Windows Phone8.1中的CommandBar的相关文章

Windows Phone8.1中SD卡文件的读取写入方法汇总

起初我想从SD卡上读取文件可以从两个方面着手吧: 1.通过文件选择器FileOpenPicker,来逐层到手机找到需要读取的文件,然后点击直接读取显示内容 2.直接到SD卡中读取文件 第一种方法逻辑有些复杂,设计到应用暂时的挂起和恢复,这篇博客不深究这种方法 第二种方法,相对于来说逻辑就比较简单了.只要获取到SD卡对象,遍历里面的文件或者直接指定某一个文件夹,接下 来就是读取文件内容或文件夹中的内容了. 对于上面的两种方法,作为初学者的我最近都尝试了好几遍,着实感觉学到了好多.多次逛博客,贴吧,

windows phone8.1列表显示

在windows phone8.1中,列表显示数据分为以下几个控件,ItemsControl,ListBox,ListView,GridView,SemanticZoom控件. 以前我一直在用ListBox控件或者ListView控件来显示简单数据,今天自己随便玩玩,写了一些简单的只显示的数据,用ItemsControl实现,开始觉得还好,当我把数据量增大一下时候,坑爹的情况发生了,竟然不能滑动!!!也就是只能显示手机页面那多高的数据,不能滑动来查看后面那些数据,完全没有ListBox控件或者L

Windows Phone8 中如何引用 SQLite 数据库

SQLite数据库介绍 1.SQLite是一款轻型的嵌入式数据库,使用C++开发,使用非常广泛 2.SQLite是一款跨平台的数据库,支持Windows.Linux.Android.IOS.Windows Phone行装系统 3.在Windows Phone中的SQLite是一个非托管组件 4.可以在Windows运行时中使用,也可以在C#项目中使用 5.在C#项目中需要通过Windows运行时组件来访问 下面介绍如何在wp中使用SQLite开发应用程序 1.首先我们来下载数据库工具安装包,地址

Windows Phone8.1系统新特性

Windows Phone 8.1 beta SDK已经为大家透露了不少WP8.1系统的新特性,不过这些新特性还不能保证在最终的消费者版本中都有所体现,毕竟它还仅是SDK版本.日前,国外媒体WPCentral总结了一份WP8.1系统目前曝光的一些新特性. 活动中心 • 通知中心—提醒,通知,更新记录,以及更多 • 快捷控制中心—自定义操作,包括Wi-Fi,蓝牙,飞行模式等 应用+商店 • 应用可以捕获音视频文件,但是版权有所限制.       • 应用和游戏数据可以存储到SD上 • SD卡上的应

Windows系统Unity3D中的快捷键

[狗刨学习网] Windows系统Unity3D中的快捷键[td] 组合键 键 功能 File 文件 Ctrl   N New Scene 新建场景 Ctrl   O Open Scene 打开场景 Ctrl   S Save Scene 保存 Ctrl Shift S Save Scene as 保存场景为 Ctrl Shift B Build Settings... 编译设置... Ctrl   B Build and run 编译并运行 Edit 编辑 Ctrl   Z Undo 撤消 C

Windows PowerShell 会话中使用 FSharp 代码编译器

<# $fSharpCode= @" moduleTest let HelloWorld = "Hello World!!!!" printfn "%s" HelloWorld let rec Loop n = seq [ if n <= 0 then () else yield n; yield! Loop (n-1) ] |> Seq.sort printfn "%A" (Loop 5) let rec facto

Windows Store 应用中获取程序集版本号的方法

本文为个人博客备份文章,原文地址: http://validvoid.net/windows-store-app-get-assembly-version/ WinRT 中对反射做了很多限制,假设 Windows Store 应用引用了一个程序集 MyApp.Utils,其中有一个类叫做 MyUtils,可以使用以下方法获得程序集 MyApp.Utils的版本号和文件版本号. 获得程序集版本号 方法一 using System.Reflection; public static string G

Windows Store App 中使用Scrollviewer实现缩放功能

Windows Store App中可以直接使用Scrollviewer实现缩放功能,基本代码如下: <ScrollViewer Background="Yellow" HorizontalScrollBarVisibility="Visible" MaxZoomFactor="2" MinZoomFactor="0.5" VerticalScrollBarVisibility="Visible" Z

在windows 2008 R2中SQl Server 2008中代理启动失败的一个原因总结

启动SQL代理的时候报错如下: 关调用实时(JIT)调试而不是此对话框的详细信息,请参见此消息的结尾. ************** 异常文本 **************System.NullReferenceException: 未将对象引用设置到对象的实例. Server stack trace: 在 Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.ObjectExplorer.FindObjectExplore