win8之Tile练习

win8系统的开始屏由各种应用的Tile构成,这些磁贴拥有丰富的信息交互功能,而Tile通知就是其中重要的通知形式之一,其作用就是向这些开始屏上的应用Tile推送消息,实时显示应用程序的最新消息数据,使用户在不打开应用的情况下,了解应用更新信息。

首先新建一个项目,并在Package.appxmanifest文件中为应用设置宽微标图片。在MainPage.xaml中定义界面

<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">
        <Button x:Name="SendTitleUpdate" Click="SendTitleUpdate_Click" Content="发送tile更新通知" Height="112" Width="241" Margin="0,325,0,331" FontSize="36"/>
    </Grid>

接下来编写按钮的单击事件

private void SendTitleUpdate_Click(object sender, RoutedEventArgs e)
        {
            TileUpdateManager.CreateTileUpdaterForApplication().EnableNotificationQueue(true);
            XmlDocument TitleXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWideText06);
            //XmlDocument TitleXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWidePeekImage06);
            XmlNodeList textElement = TitleXml.GetElementsByTagName("text");
            int index = 1;
            foreach (XmlElement TitleTextAttr in textElement)
            {
                TitleTextAttr.InnerText = "文本区域" + Convert.ToString(index);
                index++;
            }
            textElement[0].InnerText = "特殊,第一个";
            TileNotification tileNotification = new TileNotification(TitleXml);
            tileNotification.Tag = "queue1";
            TileUpdateManager.CreateTileUpdaterForApplication().Update(tileNotification);

            XmlDocument TitleXml1 = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWideText06);
            //XmlDocument TitleXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWidePeekImage06);
            XmlNodeList textElement1 = TitleXml1.GetElementsByTagName("text");
            int index2 = 8;
            foreach (XmlElement TitleTextAttr in textElement1)
            {
                TitleTextAttr.InnerText = "文本区域" + Convert.ToString(index2);
                index2++;
            }
            textElement1[0].InnerText = "特殊,第一个";
            TileNotification tileNotification1 = new TileNotification(TitleXml1);
            tileNotification1.Tag = "queue2";
            TileUpdateManager.CreateTileUpdaterForApplication().Update(tileNotification1);

        }
用到TileUpdateManager和XmlDocument类,需要引用命名空间,只需要在把鼠标放在类上,选择解析,或者选择快捷方式。

XmlDocument TitleXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWideText06);
这个是用的tile通知的模板,系统为我们提供了很多,我们可以参考资料。

这里需要注意一点,这是发送的宽型Tile通知,需要添加宽微标。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值