2

您好,我正在使用以下代码,动态磁贴可以正常工作,但我发现磁贴的左下角总是有小标志,我该如何摆脱它?看到这个

 XmlDocument tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWideImageAndText01);
        XmlDocument squareTileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquarePeekImageAndText01);

        XmlNodeList textElements = tileXml.GetElementsByTagName("text");
        textElements[0].AppendChild(tileXml.CreateTextNode(_serviceOrderItems.Count.ToString()));

        XmlNodeList imageElements = tileXml.GetElementsByTagName("image");
        XmlElement imageElement = (XmlElement)imageElements[0];
        imageElement.SetAttribute("src", "ms-appx:///Assets/Image310X150.jpg");
        imageElement.SetAttribute("alt", "Aker Solutions");

        XmlNodeList squareImageElements = squareTileXml.GetElementsByTagName("image");
        XmlElement squareImageElement = (XmlElement)squareImageElements.Item(0);
        squareImageElement.SetAttribute("src", "ms-appx:///Assets/Image150X150.jpg");
        squareImageElement.SetAttribute("alt", "Aker Solutions");

        IXmlNode subnode = tileXml.ImportNode(squareTileXml.GetElementsByTagName("binding")[0], true);
        tileXml.GetElementsByTagName("visual")[0].AppendChild(subnode);

        TileNotification tile = new TileNotification(tileXml);
        TileUpdateManager.CreateTileUpdaterForApplication().Update(tile);
4

2 回答 2

3

设置品牌=“无”

<?xml version="1.0" encoding="UTF-8"?>
<tile>
<visual lang="en-US">
    <binding template="TileSquareImage" branding="none">
        <image id="1" src="http://abc..../xx.png"/>
    </binding>
    <binding template="TileWideImageAndText01" branding="none">
        <image id="1" src="http://abc.../yy.png"/>
        <text id="1">Test message</text>
    </binding>
</visual>
</tile>
于 2013-10-22T12:59:19.643 回答
1

编辑

刚刚注意到您可以在视觉或绑定节点上设置品牌属性的评论。

tileXml.getElementsByTagName('visual')[0].setAttribute('branding', 'none');

tile 上有一个小的 logo 属性来控制它。但是文档指出:

如果未提供此图像,则使用此辅助磁贴的父应用程序的小徽标。

由于您的应用程序还需要一个小徽标,因此无法将其关闭。一种解决方法是将小徽标设置为完全透明的 30 x 30 像素 png。

var tile = new Windows.UI.StartScreen.SecondaryTile(newTileID, newTileShortName, newTileDisplayName, TileActivationArguments, newTileOptions, uriLogo);
tile.smallLogo = new Windows.Foundation.Uri("ms-appx:///images/smallLogoBlank.png");
于 2013-03-11T05:40:27.370 回答