Windows 8实用窍门系列:11.Windows 8 中的Toast Tile Badge通知-阿里云开发者社区

开发者社区> 橘子红了呐> 正文

Windows 8实用窍门系列:11.Windows 8 中的Toast Tile Badge通知

简介:
+关注继续查看

在Windows 8中有三种通知的方式及时提醒用户,它们分别是Toast,Tile,Badge

  Toast:是在应用程序中及时弹出的提醒通知。

  Tile:是磁贴通知,用于Metro界面中的应用程序图标上进行图片和文字通知。

  Badge:是在磁贴小贴士通知,用于Metro界面中的应用程序图标右下角提示当前有多少新消息或者当前应用程序状态,如(playing paused newMessage)等。

  准备工作:   首先:引用NotificationsExtensions.winmd库,这是对各种通知简化访问的封装。

        其次:打开Package.appxmanifest重新设置各种徽标。

        最后:打开Package.appxmanifest,设置“支持Toast通知”为“是”。

Toast:

复制代码
        private void ToastNotice_Click(object sender, RoutedEventArgs e)
        {
            //Toast通知文字以及图片设置
            IToastImageAndText01 Toast = ToastContentFactory.CreateToastImageAndText01();
            Toast.TextBodyWrap.Text = "今日世界末日倒数10天!";
            Toast.Image.Src = "http://news.shangdu.com/301/20120512/P_5626361_0__1686841290.jpg";
            ToastNotificationManager.CreateToastNotifier().Show(Toast.CreateNotification());
        }
复制代码

效果图片:

Tile:

复制代码
        private void TileNotice_Click(object sender, RoutedEventArgs e)
        {
            //Tile通知文字以及图片设置
            ITileWideImageAndText01 tile = TileContentFactory.CreateTileWideImageAndText01();
            tile.TextCaptionWrap.Text = "小资情有独钟 10款合资热销时尚车型导购";
            tile.Image.Src = "http://news.mycar168.com/uploadfile/2011/1030/20111030040816628.jpg";

            ITileSquareImage wideImageContent = TileContentFactory.CreateTileSquareImage();
            wideImageContent.Image.Src = "http://news.mycar168.com/uploadfile/2011/1030/20111030040816628.jpg";
            tile.SquareContent = wideImageContent;
            TileUpdateManager.CreateTileUpdaterForApplication().Update(tile.CreateNotification());
        }

        private void ClearTile_Click(object sender, RoutedEventArgs e)
        {
            //清除Tile通知
            TileUpdateManager.CreateTileUpdaterForApplication().Clear();
        }
复制代码

效果图片:

Badge:

复制代码
       private void BadgeNotice_Click(object sender, RoutedEventArgs e)
        {
            //Badge数字通知
            BadgeNumericNotificationContent badge = new BadgeNumericNotificationContent(29);
            BadgeUpdateManager.CreateBadgeUpdaterForApplication().Update(badge.CreateNotification());
        }

        private void BadgeImage_Click(object sender, RoutedEventArgs e)
        {
            //Badge状态图片通知
            BadgeGlyphNotificationContent badge = new BadgeGlyphNotificationContent(GlyphValue.Paused);
            BadgeUpdateManager.CreateBadgeUpdaterForApplication().Update(badge.CreateNotification());
        }

        private void BadgeClear_Click(object sender, RoutedEventArgs e)
        {
            //清楚Badge通知
            BadgeUpdateManager.CreateBadgeUpdaterForApplication().Clear();
        }
复制代码

图片效果见图片右下角:

 

Xaml:

复制代码
    <Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">
        <Button Content="Toast通知" HorizontalAlignment="Left" Name="ToastNotice"
                Margin="250,172,0,0" VerticalAlignment="Top" Click="ToastNotice_Click"/>
        <Button Content="Tile 通知" HorizontalAlignment="Left" Name="TileNotice"
                Margin="394,172,0,0" VerticalAlignment="Top" Click="TileNotice_Click"/>
        <Button Content="清除Tile通知" HorizontalAlignment="Left" Name="ClearTile"
                Margin="559,172,0,0" VerticalAlignment="Top" Click="ClearTile_Click" />
        <Button Content="Badge数字" HorizontalAlignment="Left" Name="BadgeNotice"
                Margin="250,270,0,0" VerticalAlignment="Top" Click="BadgeNotice_Click"/>
        <Button Content="Badge图片" HorizontalAlignment="Left" Name="BadgeImage"
                Margin="394,270,0,0" VerticalAlignment="Top" Click="BadgeImage_Click" />
        <Button Content="Badge清除" HorizontalAlignment="Left" x:Name="BadgeClear"
                Margin="559,270,0,0" VerticalAlignment="Top" Click="BadgeClear_Click" />
    </Grid>
复制代码

  最后如需源码请点击 Win8Notice.rar 下载。


本文转自程兴亮博客园博客,原文链接:http://www.cnblogs.com/chengxingliang/archive/2012/12/10/2810081.html,如需转载请自行联系原作者



版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Windows系统迁移上云后如何激活?
使用整机迁移方式(Re-Host)将Windows迁移至云平台后,由于底层的硬件发生改变,导致Windows序列号失效,需要重新进行激活。对于企业用户,如何保护既有投资,使用合理的方式对系统激活而不产生额外费用呢?本文基于项目中的最佳实践,为您详细进行解读。
9 0
Linux常用命令
文章目录 Linux常用命令 1.修改基本配置 1.1修改主机名 1.2修改ip地址 1.3修改ip和主机名的映射 1.4关闭防火墙 2.常用快捷键 3.日常操作命令 4.文件操作命令 4.1基本命令 4.2文件夹命令 4.3创建文件 4.4vi命令 4.5vim介绍 5.文件权限命令
3 0
听写服务升级为录音笔OS,搜狗AI如何行业改造?
老瓶换新酒,搜狗如何推动录音笔市场升级?
4 0
SpringBoot项目集成FTP
FTP是一个文件传输协议,被开发人员广泛用于在互联网中文件传输的一套标准协议。而我们通常在开发过程中也要通过FTP来搭建文件系统,用于存储系统文件等。目前正值SpringBoot热潮,所以接下来会一起学习一下SpringBoot如何集成FTP,以及相关的FTP组件包,还有其主要提供的几个方法。
3 0
教妹学Java(四):Hello World
教妹学Java(四):Hello World
4 0
【愚公系列】2021年11月 C#版 数据结构与算法解析(Trie树)
【愚公系列】2021年11月 C#版 数据结构与算法解析(Trie树)
6 0
ecs使用体验
这是一段时间以来使用ecs的体验
10 0
这些软件太强了,Mac必装!尤其程序员!
这些软件太强了,Mac必装!尤其程序员!
4 0
Docker入门实战 (二) - Docker环境的搭建方法(上)
Docker入门实战 (二) - Docker环境的搭建方法
3 0
阿里云&树莓派通信记录
本文详细介绍如何使用阿里云服务器与小程序之间完成通讯。
9 0
2389
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载