• Hub(中心)
  • 中心页是用户进入应用的入口点。中心页在丰富的平移视图中显示内容,这样用户一眼就能看见新鲜有趣的内容,从而吸引他们深入了解你的应用中的更多内容。中心显示不同的内容类别,每个类别映射到应用的分区页中。每个部分都应该显示内容或功能。中心应该提供许多可以看到的变化,吸引用户,并将他们吸引到应用的各个部分。

    XAML Hub 控件提供元素帮助你为应用更轻松地实现中心设计模式。与从单独源显示数据的 GridViewListView 控件不同,每个中心分区都可显示来自不同源的数据。任何 XAML 内容均可用于创建视觉效果丰富的中心页。若要开始快速创建带有 Hub 页的应用,请使用 Microsoft Visual Studio 2013 中的“中心应用”模板。

    将头文件添加到 Hub,让用户知道你的中心的内容。它通常是应用的名称。你可以使用简单文本 Header,也可以定义使用任何 XAML 内容的 HeaderTemplate。切记,虽然你可以在头中使用任意内容,但头的高度将会影响中心分区内容中可用的垂直空间量。头仍然固定在其原位置,不会随中心分区滚动。

    中心分区

    将中心的内容放在各种 HubSection 控件中。与中心一样,HubSection 包含 HeaderHeaderTemplate 属性,你可以使用这些属性为分区设置可选头。还可以将分区的头设置为交互式头。通常,用户可点击交互头转到相应的应用分区页面。当其 IsHeaderInteractive 属性为 true 时,默认头包括 V 型字型,以及"悬停"和"按下"视觉状态。如果使用自定义 HeaderTemplate,请提供类似的视觉提示,表明该头为交互式头。

    不要将内容直接添加到中心分区,而应在 DataTemplate 对象中定义 HubSection 的内容。可以通过内联方式定义内容,也可以将内容绑定到数据源。任何有效 XAML 均可在中心分区中使用。

  • HubDemo.xaml
    <Page
    x:Class="vs2013win8._1.AppBarDemo"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:vs2013win8._1"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d">
    <Grid Background="Transparent">
    <Grid.ChildrenTransitions>
    <TransitionCollection>
    <EntranceThemeTransition/>
    </TransitionCollection>
    </Grid.ChildrenTransitions>
    <Hub DefaultSectionIndex="1" SectionHeaderClick="Hub_SectionHeaderClick">
    <Hub.Header>
    <!--
    后退按钮和页标题
    -->
    <Grid>
    <Grid.ColumnDefinitions>
    <ColumnDefinition Width="80"/>
    <ColumnDefinition Width="*"/>
    </Grid.ColumnDefinitions>
    <Button x:Name="backButton" Margin="-1,-1,39,0" Command="{Binding NavigationHelper.GoBackCommand, ElementName=pageRoot}"
    Style="{StaticResource NavigationBackButtonNormalStyle}"
    VerticalAlignment="Top"
    AutomationProperties.Name="Back"
    AutomationProperties.AutomationId="BackButton"
    AutomationProperties.ItemType="Navigation Button"/>
    <TextBlock x:Name="pageTitle" Text="Title" Style="{StaticResource HeaderTextBlockStyle}" Grid.Column="1"
    IsHitTestVisible="false" TextWrapping="NoWrap" VerticalAlignment="Top"/>
    </Grid>
    </Hub.Header> <!--hub 的第 1 个 section-->
    <HubSection Width="780" Margin="0,0,80,0">
    <HubSection.Background>
    <ImageBrush Stretch="UniformToFill" ImageSource="/Assets/login.jpg" />
    </HubSection.Background>
    </HubSection> <!--hub 的第 2 个 section-->
    <HubSection Width="500" Header="Section 2" Name="s2" IsHeaderInteractive="True">
    <DataTemplate>
    <Grid>
    <Grid.RowDefinitions>
    <RowDefinition Height="Auto" />
    <RowDefinition Height="Auto" />
    <RowDefinition Height="Auto" />
    <RowDefinition Height="*" />
    </Grid.RowDefinitions>
    <Image Stretch="Fill" Width="420" Height="280"/>
    <TextBlock Style="{StaticResource SubheaderTextBlockStyle}" Grid.Row="1" Margin="0,10,0,0" TextWrapping="Wrap"
    Text="Lorem ipsum dolor sit nonumy sed consectetuer ising elit, sed diam"/>
    <TextBlock Style="{StaticResource TitleTextBlockStyle}" Grid.Row="2" Margin="0,10,0,0"
    Text="Description text:"/>
    <TextBlock Style="{StaticResource BodyTextBlockStyle}" Grid.Row="3"
    Text="Lorem ipsum dolor sit amet, consectetuer ising elit, sed diam nonummy nibh uismod tincidunt ut laoreet suscipit lobortis ni ut wisi quipexerci quis consequat minim veniam, quis nostrud exerci tation ullam corper. Lorem ipsum dolor sit amet, consectetuer ising elit, sed diam nonummy nibh uismod tincidunt ut laoreet suscipit lobortis ni ut wisi quipexerci quis consequat minim veniam, quis nostrud exerci tation ullam corper. "/>
    </Grid>
    </DataTemplate>
    </HubSection> <!--hub 的第 3 个 section-->
    <HubSection Width="520" Header="Section 3" Name="s3" IsHeaderInteractive="True">
    <DataTemplate>
    <Grid>
    <Grid.RowDefinitions>
    <RowDefinition Height="Auto" />
    <RowDefinition Height="Auto" />
    <RowDefinition Height="Auto" />
    <RowDefinition Height="*" />
    </Grid.RowDefinitions>
    <TextBlock Style="{StaticResource TitleTextBlockStyle}" Margin="0,0,0,10"
    Text="Item Title" />
    <TextBlock Style="{StaticResource SubheaderTextBlockStyle}" Grid.Row="1"
    Text="Quisque in porta lorem dolor amet sed consectetuer ising elit, sed diam non my nibh uis mod wisi quip."/>
    <TextBlock Style="{StaticResource SubtitleTextBlockStyle}" Grid.Row="2" Margin="0,20,0,0"
    Text="Item Sub Title"/>
    <TextBlock Style="{StaticResource BodyTextBlockStyle}" Grid.Row="3"
    Text="Lorem ipsum dolor sit amet, consectetuer ising elit, sed diam nonummy nibh uismod tincidunt ut laoreet suscipit lobortis ni ut wisi quipexerci quis consequat minim veniam, quis nostrud exerci tation ullam corper. Lorem ipsum dolor sit amet, consectetuer ising elit, sed diam nonummy nibh uismod tincidunt ut laoreet suscipit lobortis ni ut wisi quipexerci quis consequat minim veniam, quis nostrud exerci tation ullam corper."/>
    </Grid>
    </DataTemplate>
    </HubSection> </Hub> </Grid> </Page>
     private async void Hub_SectionHeaderClick(object sender, HubSectionHeaderClickEventArgs e)
    {
    switch (e.Section.Name)
    {
    case "s2":
    await new MessageDialog("点击了 Section 2", "提示").ShowAsync();
    break;
    case "s3":
    await new MessageDialog("点击了 Section 3", "提示").ShowAsync();
    break;
    default:
    break;
    }
    }

Hub control的更多相关文章

  1. What Controls are new for windows phone 8.1

    http://www.jayway.com/2014/04/08/windows-phone-8-1-for-developerswhat-controls-are-new-2/ What contr ...

  2. Windows 8.1 新控件和功能:

    http://msdn.microsoft.com/zh-cn/library/windows/apps/bg182878.aspx#five 将 XAML 树呈现为位图: 适用于 Windows 8 ...

  3. Hub, bridge, switch, router, gateway的区别

    这些概念性的东西,其实,有的区别不是很大,有的区别很大. Hub 就是一个重复转发器,就是从一个port接受到数据后,就会原样的向其他的所有端口发送刚才收到的数据.个人理解为是工作在物理层的东西.但是 ...

  4. Mobile Service更新和 Notification Hub 对Android的支持

    本周,我们要推出一些更新,使移动服务成为移动应用程序更强大.更灵活的后端,同时推出一个与移动服务或网站结合使用的免费 20MB SQL 数据库,并且将支持通过Notification Hub中的 GC ...

  5. 背水一战 Windows 10 (49) - 控件(集合类): Pivot, Hub

    [源码下载] 背水一战 Windows 10 (49) - 控件(集合类): Pivot, Hub 作者:webabcd 介绍背水一战 Windows 10 之 控件(集合类) Pivot Hub 示 ...

  6. Method, apparatus, and system for speculative abort control mechanisms

    An apparatus and method is described herein for providing robust speculative code section abort cont ...

  7. HUB、Switch、Router在OSI模型层次信息

    序 (HUB)集线器工作在局域网(LAN)环境,像网卡一样,应用于OSI参考模型第一层,因此又被称为物理层设备. Switch交换机工作在OSI第2层数据链路层 Router路由器工作在OSI第3层网 ...

  8. ignore users and roles by filter in sql source control

    https://www.red-gate.com/hub/product-learning/sql-source-control/source-controlling-database-permiss ...

  9. Event Hub小白入门指南

    Event Hub事件中心 本文的目的在于用最白的大白话,让你从“完全不懂”开始,理解什么是分布式大数据流平台Event Hub,并且理解它的关键概念,并且初步理解其收发数据API. 定义,Event ...

随机推荐

  1. ruby关于flip-flop理解上一个注意点

    (..).each do |x| puts x ) .. (x == ) end 上面的flip-flop的用法,你可以理解成 将 大于等于5和小于等于10的数字打印出来,也就是理解成  puts x ...

  2. Hibernate的dialect大全

    RDBMS 方言 DB2 org.hibernate.dialect.DB2Dialect DB2 AS/400 org.hibernate.dialect.DB2400Dialect DB2 OS3 ...

  3. [SQL]动态sql语句基本语法

    动态sql语句基本语法 :普通SQL语句可以用Exec执行 eg: Select * from tableName Exec('select * from tableName') Exec sp_ex ...

  4. ios7 Cocos2dx 隐藏状态栏设置

    环境: cocos2d-x 2.1.5 ios7.0     在info.plist 添加 UIViewControllerBasedStatusBarAppearance(View controll ...

  5. T4 模板的调试方法,方便大家遇到问题自己快速定位和优化

    T4 模板的调试方法,方便大家遇到问题自己快速定位和优化 :1. .ttinclude文件的第一行修改为 <#@ template language="C#" debug=& ...

  6. QWizard中运行时默认按钮显示英文问题

    QWizard中运行时默认按钮在编译前设计界面的时候是显示中文的,运行的时候就变成英文了.. 后来是发现国际化的时候有问题,解决办法如下: 在main.cpp里加: QTranslator* tran ...

  7. 制作东皇3.2的安装U盘-黑苹果之路

    每次使用硬盘映像安装需要先装windows,制作东皇3.2安装分区,再装bootthink,再通过bootthink加载东皇3.2的分区进行安装,非常繁琐.尝试制作U盘来直接安装东皇3.2.过程如下: ...

  8. 翻译:Knockout 快速上手 - 5: 你需要知道的顶级特性 续

    Utilities Knockout 提供了许多可以你开发中使用的工具,你可以在 ko.utils 命名空间中找到它们,我最喜欢的工具如下所示: extend: 这个方法将两个对象合并在一起,调用这个 ...

  9. 解决eclipse中出现Resource is out of sync with the file system问题

    解决eclipse中出现Resource is out of sync with the file system问题 . 分类: 嵌入式开发平台和环境相关 2011-12-27 16:18 4872人 ...

  10. win8 C 盘 突然少了 十几G 空间 原因,解决方法

    原因: win8 默认最大虚拟内存为 16G多,但现在电脑本身内存就大,所以应该不用了.我现在电脑本身内存是16G. 如果C盘空间大,这个无所谓了,如果C盘空间小可以按以下操作,拿回16G空间: 解决 ...