熟悉或者了解wp系统的人都知道wp的Toast,Toast(吐司)通知是在屏幕最顶上弹出来的提示框,它专为与锁屏提醒、磁贴通知和应用中UI结合使用而设计,但它不是MessageDialog。说简单点它可以在打开应用的时候弹出也可以在应用关闭的时候弹出,不是重要的信息别用Toast。

要使用Toast,必须先在Package.appxmanifest中进行设置

然后如下,将“支持Toast通知”设为“是”,如果你用的是英文版的vs,“Application”-->"Notifications"-->“Toast capable”,设为“Yes”。

接下来贴一个小例子:

//参数是枚举,用来获取系统的模板
XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText01);
//下面是一些xml的操作,就不多说明
XmlNodeList elements = toastXml.GetElementsByTagName("text");
elements[].AppendChild(toastXml.CreateTextNode("a sample toast"));
//创建并初始化,然后显示
ToastNotification toast = new ToastNotification(toastXml);
ToastNotificationManager.CreateToastNotifier().Show(toast);

如果你要查看模板中的xml,可以如下

var Template = toastXml.GetXml();

上例中ToastText01模板的Xml为

好了,我们再回顾下创建Toast的步骤:

1.我们得先获取模板,当然也可以自己用字符串拼出模板,注意节点貌似都是固定的,不识别自定义

//binding 中的template属性的值必须是已有的系统模板即必须跟枚举值相同,如果是其他的则会弹出New notification
//至于如何自定义模板我还不知道,有知道的请留言
string ToastXml = "<toast>"
    +"<visual>"
    + "<binding template='ToastText01'>"
    + "<text id='1'>"+DateTime.Now.ToString()+"</text>"
    +"</binding>"
    +"</visual>"
    +"</toast>";
XmlDocument toastXml = new XmlDocument();
toastXml.LoadXml(ToastXml);

ToastNotification toast = new ToastNotification(toastXml);
ToastNotificationManager.CreateToastNotifier().Show(toast);

2.填写要弹出的内容

3.创建Toast对象

4.弹出

在应用离开前台时,我们可以使用定期Toast(ScheduledToastNotification类)来弹出消息,即通过预设一个时间点,然后在这个时间点弹出Toast通知,如果应用不在前台运行,用可以通过点击Toast通知直接进入当前的应用。

XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText01);
XmlNodeList elements = toastXml.GetElementsByTagName("text");
elements[].AppendChild(toastXml.CreateTextNode("a sample toast"));
//这是定时Toast
//基本步骤都相同,不同是我们需要预设一个时间和调用的弹出方法不同
DateTime dt = DateTime.Now.AddSeconds();
ScheduledToastNotification toast = new ScheduledToastNotification(toastXml, dt);
ToastNotificationManager.CreateToastNotifier().AddToSchedule(toast);

//这是前台运行才能弹出的Toast
//ToastNotification toast = new ToastNotification(toastXml);
//ToastNotificationManager.CreateToastNotifier().Show(toast);

效果如下:

好了,关于Toast就简单的说到这儿。

windowsphone8.1学习笔记之Toast通知的更多相关文章

  1. iOS学习笔记22-推送通知

    一.推送通知 推送通知就是向用户推送一条信息来通知用户某件事件,可以在应用退到后台后,或者关闭后,能够通过推送一条消息通知用户某件事情,比如版本更新等等. 推送通知的常用应用场景: 一些任务管理APP ...

  2. windowsphone8.1学习笔记之磁贴

    磁贴,wp系统独有.个人觉得还是蛮给力的. 好了废话不多说,我们来创建自己的辅助磁贴.创建磁贴是通过SecondaryTile对象来的,所以先说说该对象的一些重要属性. Arguments属性:传值用 ...

  3. android学习笔记---发送状态栏通知

    发送消息的代码如下: //获取通知管理器 NotificationManager mNotificationManager = (NotificationManager) getSystemServi ...

  4. C#学习笔记之线程 - 通知Signal

    通知事件等待句柄 Signal With EventWaitHandle 事件等待句柄常用于通知.当一个线程等待直到接收到另外一个线程发出的信号.事件等待句柄是最简单的信号结构,它与C#事件无关.有三 ...

  5. Android学习笔记之Toast详解

    1. 贴一段Android API-Toast Toast public class Toast  extends Object java.lang.Object ↳ android.widget.T ...

  6. 吴裕雄--天生自然JAVA SPRING框架开发学习笔记:Spring通知类型及使用ProxyFactoryBean创建AOP代理

    通知(Advice)其实就是对目标切入点进行增强的内容,Spring AOP 为通知(Advice)提供了 org.aopalliance.aop.Advice 接口. Spring 通知按照在目标类 ...

  7. Android学习笔记通过Toast显示消息提示框

    显示消息提示框的步骤 这个很简单我就直接上代码了: Button show = (Button)findViewById(R.id.show); show.setOnClickListener(new ...

  8. windowsphone8.1学习笔记之位图编程

    说位图,先把image控件简单过下,Image的Source设置 <Image Name="img" Source="可以是网络图片的Uri.应用文件的Uri或者安 ...

  9. windowsphone8.1学习笔记之应用数据(四)

    应用数据的存储格式常用的分为json和xml两种(其实我都想略过这个地方的,json我一直用的是json.net,而wp上操作xml的方式与其他相比也没太多变化). 先说说json数据存储,关于jso ...

随机推荐

  1. mipmap一

    讲一下mipmap 生成的时候 指定texture 的mipmaplevel 8 然后memory自动就会那么大的 画的时候要在lineraspace(因为我是gpucopy所以不涉及这个问题 可能) ...

  2. ISP模块之RAW DATA去噪(一)

    ISP(Image Signal Processor),图像信号处理器,主要用来对前端图像传感器输出信号处理的单元,主要用于手机,监控摄像头等设备上. RAW DATA,可以理解为:RAW图像就是CM ...

  3. Windows 用VS编译libevent源码

    原理:从github上克隆libevent源码,然后使用cmake生成VS工程 github 上 libevent项目地址:https://github.com/libevent/libevent 第 ...

  4. Time.timeScale 时间缩放

    static var timeScale : float Description描述 The scale at which the time is passing. This can be used ...

  5. django book学习问题记录

    —————————————————————————————————— 位置:第五章<模型> 问题描述(已解决): >>> p1 = Publisher.objects.c ...

  6. 使用file_get_contents下载图片

        <?php /* 当你在搭建网站时,从远程服务器下载某张图片并且将其保存在自己的服务器上,这一操作会经常用到.代码如下: */ $image = file_get_contents('h ...

  7. 安卓使用Socket发送中文,C语言服务端接收乱码问题解决方式

    今天用安卓通过Socket发送数据到电脑上使用C语言写的服务端,发送英文没有问题,可当把数据改变成中文时,服务端接收到的数据确是乱码. 突然想到.VS的预处理使用的是ANSI编码.而安卓网络数据都是U ...

  8. 仿IOS中下拉刷新的“雨滴”效果

    在IOS中,有非常赞的"水滴"下拉效果.非常久之前也想在Android上实现,可是苦于能力有限,一直未能付诸行动.这几天趁着空隙时间.写了一版初步实现,基本达到了"水滴& ...

  9. adb pull adb push

    adb pull:数据从真机到计算机 adb push: 数据从计算机到真机 使用方法: 在android开发环境的sdk--platform tools中安装了adb,在该目录下运行“adb pul ...

  10. 转 WCF WebService区别

    下面我们来详细讨论一下二者的区别.Web Service和WCF的到底有什么区别. [1]Web Service:严格来说是行业标准,也就是Web Service 规范,也称作WS-*规范,既不是框架 ...