UWP学习记录5-设计和UI之控件和模式2

1、应用栏和命令栏

CommandBar 控件是一款通用、灵活、轻型的控件,可显示复杂内容(如图像或文本块)以及简单的命令(如 AppBarButton、AppBarToggleButton 和 AppBarSeparator 控件)。XAML 提供 AppBar 控件和 CommandBar 控件。对于 Windows 10 中的新应用,微软建议改用 CommandBar 控件。

命令栏分为 4 个主要区域:

“查看更多”[•••] 按钮显示在该栏的右侧。 按“查看更多”[•••] 按钮具有两种效果:显示主要命令按钮上的标签,以及在存在任何辅助命令的情况下打开溢出菜单。 在最新的 SDK 中,当不存在任何辅助命令和隐藏标签时,该按钮将不可见。 OverflowButtonVisibility 属性允许应用更改此默认自动隐藏行为。

内容区域与栏的左侧对齐。 如果填充了 Content 属性,将显示该区域。

主要命令区域与栏的右侧对齐,位于“查看更多”[•••] 按钮旁边。 如果填充了 PrimaryCommands 属性,将显示该区域。

仅在命令栏处于打开状态并且填充了 SecondaryCommands 属性时才显示溢出菜单。 当空间有限时,新的动态溢出行为会自动将主要命令移到 SecondaryCommands 区域中。

当 FlowDirection 为 RightToLeft 时,布局会反转。

2、创建命令栏

创建命令栏使用<CommandBar>标签。CommandBar 控件具有三个可用于添加命令和内容的属性:PrimaryCommands、SecondaryCommands 和 Content。PrimaryCommands 和 SecondaryCommands 都只能使用AppBarButton、AppBarToggleButton 和 AppBarSeparator 命令元素填充。

更多的使用细节,文档里有讲,包括对按钮的样式配置、浮出控件和溢出菜单、关闭模式等。

3、何时使用命令栏

命令栏,完全是UWP新出现的东西(这种控件,而不是这种界面)。与之对应的,是传统桌面程序的标题栏。这意味着,很多app都并不会去使用命令栏,因为这个UI模式并不能很好的适应各种系统环境,或者说还不符合很多人的操作习惯。当然,以后也许会流行起来。

以现在UWP应用的楷模为例,网易云音乐,它在几个不同的平台有着相似的UI,所以它是没有命令栏的:

另外一个楷模,bilibili的UWP版,作者以前就是做winphone开发的,所以metro风很浓,它用到了命令栏:

然而,这个命令栏实在是不搭整个界面。

再看微软自己的应用,第一重要的应用,应用商店,它也是没有命令栏的:

另外,我这些图都是在win10的窗口模式截的,不知道它们在平板模式或者手机上,是不是会有不同的UI展示。总之,在做桌面程序时,命令栏并不是必须的。

UWP学习记录5-设计和UI之控件和模式2的更多相关文章

  1. UWP学习记录4-设计和UI之控件和模式1

    UWP学习记录4-设计和UI之控件和模式1 1.控件和事件简介 在 UWP 应用开发中,控件是一种显示内容或支持交互的 UI 元素. 控件是用户界面的构建基块. 我们提供了超过 45 种控件供你使用, ...

  2. UWP学习记录10-设计和UI之控件和模式7

    UWP学习记录10-设计和UI之控件和模式7 1.导航控件 Hub,中心控件,利用它你可以将应用内容整理到不同但又相关的区域或类别中. 中心的各个区域可按首选顺序遍历,并且可用作更具体体验的起始点. ...

  3. UWP学习记录9-设计和UI之控件和模式6

    UWP学习记录9-设计和UI之控件和模式6 1.图形和墨迹 InkCanvas是接收和显示墨迹笔划的控件,是新增的比较复杂的控件,这里先不深入. 而形状(Shape)则是可以显示的各种保留模式图形对象 ...

  4. UWP学习记录8-设计和UI之控件和模式5

    UWP学习记录8-设计和UI之控件和模式5 1.日历.日期和时间控件 日期和时间控件提供了标准的本地化方法,可供用户在应用中查看并设置日期和时间值. 有四个日期和时间控件可供选择,选择的依据如下: 日 ...

  5. UWP学习记录7-设计和UI之控件和模式4

    UWP学习记录7-设计和UI之控件和模式4 1.翻转视图 使用翻转视图浏览集合中的图像或其他项目(例如相册中的照片或产品详细信息页中的项目),一次显示一个项目. 对于触摸设备,轻扫某个项将在整个集合中 ...

  6. UWP学习记录6-设计和UI之控件和模式3

    UWP学习记录6-设计和UI之控件和模式3 1.按钮 按钮,响应用户输入和引发 Click 事件的控件. 使用<Button>就能创建一个按钮控件了.按钮是 ContentControl, ...

  7. UWP学习记录11-设计和UI

    UWP学习记录11-设计和UI 1.输入和设备 通用 Windows 平台 (UWP) 中的用户交互组合了输入和输出源(例如鼠标.键盘.笔.触摸.触摸板.语音.Cortana.控制器.手势.注视等)以 ...

  8. UWP学习记录3-设计和UI之样式

    UWP学习记录3-设计和UI之样式 1.颜色 在系统的“设置”>“个性化”>“颜色”里,提供了主题色选择.选定主题色后,会根据颜色亮度的 HSB 值创建浅色和深色的主题色. 应用可使用阴影 ...

  9. UWP学习记录2-设计和UI之布局

    UWP学习记录2-设计和UI之布局 1.导航基础知识 应用里,多个页面会有层次关系或者对等关系.这两种关系,通常在一个复杂应用里都会存在,而关系的选定依据: 对于对等导航,一般用选项卡(tabs)或者 ...

随机推荐

  1. Caf.CMS是一个免费的、 开源,功能齐全的CMS

    Caf.CMS(疯狂蚂蚁CMS) 是一个免费的. 开源,功能全面的CMS(内容管理系统).定位CMS也有点狭义呢,因为Caf.CMS是基于国外SmartStore.NET 开源商城源码的基础上改造而成 ...

  2. TCPIP、Http、Socket的协议~ 写得挺形象,赞

    这篇文章写得挺形象,对TCPIP.HTTP.Socket的作用有一个整体层次的理解. 转载文章内容如下: 网络由下往上分为物理层.数据链路层.网络层.传输层.会话层.表示层和应用层.   通过初步的了 ...

  3. Money, save or spend, this is a problem .

    Win a lottery? Had a great hand at the casino? Did fortune shine upon you in the stock market? 彩票中了大 ...

  4. Beta版总结会议

    一,设想和目标 1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 我们的app要解决一个令人头痛但无人具体来实现的这一社会困扰现象.因为学生或者社会人士在参加竞 ...

  5. iOS 打开本地 其他应用程序(URL Types)

    iOS 打开本地其他应用程序(URL Types) /*前言废话:Xcode是神奇的,是我所见到的编译器中最为神奇的,如:它可以同时运行两个甚至更多Project到我们模拟器上,可以同时使用一个模拟器 ...

  6. javascript格式化table标签内容

    项目中遇到这样的需求,一大段文章正文的html代码在手机中显示不全,原因是由于其它有table,而table表格中的tr/td都携带了从word中粘贴过来的样式,需要将这一大段的字符串中的table. ...

  7. AngularJs:Service、Factory、Provider依赖注入使用与区别

           本教程使用AngularJS版本:1.5.3        AngularJs GitHub: https://github.com/angular/angular.js/       ...

  8. iOS中为什么block用copy属性

    1. Block的声明和线程安全Block属性的声明,首先需要用copy修饰符,因为只有copy后的Block才会在堆中,栈中的Block的生命周期是和栈绑定的,可以参考之前的文章(iOS: 非ARC ...

  9. 用递归调用实现字符串反转(java版)

    写一个函数,输入int型,返回整数逆序后的字符串.如:输入123,返回“321”. 要求必须用递归,不能用全局变量,输入必须是一个参数,必须返回字符串. public static String re ...

  10. JavaScript生成新标签的三个方法(摘抄自留)

    <div id="d1"></div> <script> //HTML function a(){ document.getElementByI ...