public MainPage() { this.InitializeComponent(); DisplayProperties.OrientationChanged += Orientation; BQ = new BlueQueenCore(@"http://usafeapi.bluequeen.tk", "v1", "token"); CultureInfo culture = new CultureInfo("en-US"); WeatherData = BQ.getWeatherData(fromDate: DateTime.Now.ToString("d", culture)); PressureData = BQ.getPressureData(fromDate: DateTime.Now.ToString("d", culture)); //var test = WeatherData; fillTextBlock(); //tile var tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150PeekImageAndText01); var tileImage = tileXml.GetElementsByTagName("image")[0] as XmlElement; tileImage.SetAttribute("src", "ms-appx:///Assets/Square71x71Logo.scale-100.png"); var tileText = tileXml.GetElementsByTagName("text"); WeatherInfo lastTemp = WeatherData.Last(x => x.ID > 0); PressureInfo lastPress = PressureData.Last(x => x.ID > 0); (tileText[0] as XmlElement).InnerText = "Wejherowo"; (tileText[1] as XmlElement).InnerText = lastTemp.Date.ToString(); (tileText[2] as XmlElement).InnerText = string.Format("{0}°C", lastTemp.Value.ToString()); (tileText[3] as XmlElement).InnerText = string.Format("{0} hPa", lastPress.Pressure.ToString()); var tileNotification = new TileNotification(tileXml); TileUpdateManager.CreateTileUpdaterForApplication().Update(tileNotification); // eoTile }
private async void updateInfor() { string msg = ""; string status = ""; var local = ApplicationData.Current.LocalFolder; var file = await local.GetFileAsync(@"\Data\data.txt"); IList <string> lines = await FileIO.ReadLinesAsync(file); foreach (var item in lines) { string[] d = item.Split(' ', '\n'); status = d[0]; } var networkInfor = Windows.Networking.Connectivity.NetworkInformation.GetInternetConnectionProfile(); // msg = (networkInfor == null) ? "No Internet Access" : "Internet Access"; msg = (networkInfor == null) ? "No Internet Access" : status; XmlDocument xdoc = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150Text03); xdoc.GetElementsByTagName("text")[0].InnerText = msg; TileNotification notification = new TileNotification(xdoc); TileUpdateManager.CreateTileUpdaterForApplication().Update(notification); }
private static void UpdateTile(string caption, string message) { #if WNS_PUSH_SERVICE var tileUpdater = TileUpdateManager.CreateTileUpdaterForApplication(); //tileUpdater.EnableNotificationQueue(false); tileUpdater.EnableNotificationQueue(true); tileUpdater.EnableNotificationQueueForSquare150x150(false); //tileUpdater.EnableNotificationQueueForWide310x150(true); var wideTileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWide310x150IconWithBadgeAndText); SetImage(wideTileXml, "IconicSmall110.png"); SetText(wideTileXml, caption, message); var squareTile150Xml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150IconWithBadge); SetImage(squareTile150Xml, "IconicTileMedium202.png"); AppendTile(wideTileXml, squareTile150Xml); var squareTile71Xml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare71x71IconWithBadge); SetImage(squareTile71Xml, "IconicSmall110.png"); AppendTile(wideTileXml, squareTile71Xml); try { tileUpdater.Update(new TileNotification(wideTileXml)); } catch (Exception ex) { Telegram.Logs.Log.Write(ex.ToString()); } #endif }
private async Task setLiveTile() //开启磁贴 { try { TimeSpan tn = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0); long allSeconds = 105695630 + ((long)tn.TotalSeconds - 1606379872) * 7; long dd, mm, hh, ss; //用于存储最终数值 dd = allSeconds / 60 / 60 / 24 % 9999999; hh = allSeconds / 60 / 60 % 24; mm = allSeconds / 60 % 60; ss = allSeconds % 60; var tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150Text01); var tileAttributes = tileXml.GetElementsByTagName("text"); tileAttributes[0].AppendChild(tileXml.CreateTextNode("时间众筹总计")); tileAttributes[1].AppendChild(tileXml.CreateTextNode(dd + "天")); tileAttributes[2].AppendChild(tileXml.CreateTextNode(hh + "小时")); tileAttributes[3].AppendChild(tileXml.CreateTextNode(mm + "分钟")); var tileNotification = new TileNotification(tileXml); TileUpdateManager.CreateTileUpdaterForApplication().Update(tileNotification); } catch { } var tileContent = new Uri("https://add-one-second.papapoi.workers.dev/"); //自建网站 var requestedInterval = PeriodicUpdateRecurrence.HalfHour; //半小时一次 var updater = TileUpdateManager.CreateTileUpdaterForApplication(); updater.StartPeriodicUpdate(tileContent, requestedInterval); }
private static void UpdateTile() { // TileUpdateManeger pour l'application var tileUpdateManager = TileUpdateManager.CreateTileUpdaterForApplication(); tileUpdateManager.EnableNotificationQueue(true); tileUpdateManager.Clear(); var imagePath = ""; #if DEBUG try { new Uri(@"ms-appx:///" + "JC_Logo_310x150.png", UriKind.RelativeOrAbsolute); } catch (Exception ex) { } #endif imagePath = @"ms-appx:///" + "JC_Logo_310x150.png"; // Chargement du modèle XML: une image large dont la taille correspond aux logos en PNG présents dans la solution var tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWide310x150ImageAndText02); // Travail sur les noeuds (CF: Helper.Toasting(...)) XmlNodeList tileImageAttributes = tileXml.GetElementsByTagName("image"); ((XmlElement)tileImageAttributes[0]).SetAttribute("src", imagePath); ((XmlElement)tileImageAttributes[0]).SetAttribute("alt", "> Image <"); XmlNodeList tileTextAttributes = tileXml.GetElementsByTagName("text"); tileTextAttributes[0].InnerText = defaultText; tileUpdateManager.Update(new TileNotification(tileXml)); }
/// <summary> /// Delegate to update the secondary tile. This is called from the OnSuspending event handler in App.xaml.cs /// </summary> private void UpdateTile() { // Simulate a long-running task. For illustration purposes only. if (Debugger.IsAttached) { // Set a larger delay to give you time to select "Suspend" from the "LifetimeEvents" dropdown in Visual Studio in // order to simulate the app being suspended when the new tile is created. Task.Delay(8000).Wait(); } else { // When the app is not attached to the debugger, the app will be suspended so we can use a // more realistic delay. Task.Delay(2000).Wait(); } // Update the tile we created using a notification. var tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150Image); // The TileSquare150x150Image template only contains one image entry, so retrieve it. var imageElement = tileXml.GetElementsByTagName("image").Single(); // Set the src propertry on the image entry. The image in this sample is a lime green image with the word "Updated" in white text imageElement.Attributes.GetNamedItem("src").NodeValue = "ms-appx:///Assets/updatedTileImage.png"; // Create a new tile notification. var notification = new Windows.UI.Notifications.TileNotification(tileXml); // Create a tile updater. var updater = TileUpdateManager.CreateTileUpdaterForSecondaryTile(SCENARIO2_TILEID); // Send the update notification for the tile. updater.Update(notification); }
public void UpdateNewSecondaryTile() { string name = ApplicationSettingsHelper.ReadResetSettingsValue(AppConstants.TileName) as string; string id = ApplicationSettingsHelper.ReadResetSettingsValue(AppConstants.TileId) as string; string type = ApplicationSettingsHelper.ReadResetSettingsValue(AppConstants.TileType) as string; XmlDocument tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150Text02); XmlNodeList tileTextAttributes = tileXml.GetElementsByTagName("text"); tileTextAttributes[0].InnerText = type; tileTextAttributes[1].InnerText = name; XmlDocument wideTile = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWide310x150Text09); XmlNodeList textAttr = wideTile.GetElementsByTagName("text"); textAttr[0].InnerText = type; textAttr[1].InnerText = name; IXmlNode node = tileXml.ImportNode(wideTile.GetElementsByTagName("binding").Item(0), true); tileXml.GetElementsByTagName("visual").Item(0).AppendChild(node); TileNotification tileNotification = new TileNotification(tileXml); TileUpdateManager.CreateTileUpdaterForSecondaryTile(id).Update(tileNotification); }
public async static Task SetQuoteNotifications() { TileUpdateManager.CreateTileUpdaterForApplication().Clear(); TileUpdateManager.CreateTileUpdaterForApplication().EnableNotificationQueue(true); var tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150PeekImageAndText04); var tileImage = tileXml.GetElementsByTagName("image")[0] as XmlElement; var quotes = LoadQuotes(); var i = 0; TileNotification tileNotification; foreach (var quote in quotes) { tileImage.SetAttribute("src", quote.ImageUrl); var tileText = tileXml.GetElementsByTagName("text"); (tileText[0] as XmlElement).InnerText = quote.Quote; tileNotification = new TileNotification(tileXml); tileNotification.Tag = i.ToString(); i++; TileUpdateManager.CreateTileUpdaterForApplication().Update(tileNotification); } }
public MainPage() { this.InitializeComponent(); this.navigationHelper = new NavigationHelper(this); this.navigationHelper.LoadState += this.NavigationHelper_LoadState; this.navigationHelper.SaveState += this.NavigationHelper_SaveState; var doc = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWide310x150ImageAndText01); var tileTextAttributes = doc.GetElementsByTagName("text"); tileTextAttributes[0].InnerText = "Hello There! My name is Derek"; var tileImageAttributes = doc.GetElementsByTagName("image"); ((XmlElement)tileImageAttributes[0]).SetAttribute("src", "http://www.contoso.com/redWide.png"); ((XmlElement)tileImageAttributes[0]).SetAttribute("alt", "red graphic"); XmlDocument squareTileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150Text04); XmlNodeList squareTileTextAttributes = squareTileXml.GetElementsByTagName("text"); squareTileTextAttributes[0].AppendChild(squareTileXml.CreateTextNode("Hello World! My very own tile notification")); IXmlNode node = doc.ImportNode(squareTileXml.GetElementsByTagName("binding").Item(0), true); doc.GetElementsByTagName("visual").Item(0).AppendChild(node); TileNotification tileNotification = new TileNotification(doc); TileUpdateManager.CreateTileUpdaterForApplication().Update(tileNotification); }
private static void UpdateTile(SyndicationFeed feed) { // Create a tile update manager for the specified syndication feed. var updater = TileUpdateManager.CreateTileUpdaterForApplication(); updater.EnableNotificationQueue(true); updater.Clear(); // Keep track of the number feed items that get tile notifications. int itemCount = 0; // Create a tile notification for each feed item. foreach (var item in feed.Items) { Windows.Data.Xml.Dom.XmlDocument tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWide310x150Text03); var title = item.Title; string titleText = title.Text == null ? String.Empty : title.Text; tileXml.GetElementsByTagName(textElementName)[0].InnerText = titleText; // Create a new tile notification. updater.Update(new TileNotification(tileXml)); // Don't create more than 5 notifications. if (itemCount++ > 5) { break; } } }
private void tileUpdateButton_Click(object sender, RoutedEventArgs e) { // タイルのテンプレート選択 // http://msdn.microsoft.com/ja-jp/library/windows/apps/hh761491.aspx#TileSquareText03 XmlDocument tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWideImageAndText01); // キューに複数のタイル通知を設定可能にする //TileUpdateManager.CreateTileUpdaterForApplication().EnableNotificationQueue(true); XmlNodeList tileTextAttributes = tileXml.GetElementsByTagName("text"); tileTextAttributes[0].InnerText = this.tileText.Text; XmlNodeList tileImageAttributes = tileXml.GetElementsByTagName("image"); ((XmlElement)tileImageAttributes[0]).SetAttribute("src", "ms-appx:///Assets/wideTile.png"); ((XmlElement)tileImageAttributes[0]).SetAttribute("alt", "wideTile.png"); XmlDocument squareTileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquareText04); XmlNodeList squareTileTextAttributes = squareTileXml.GetElementsByTagName("text"); squareTileTextAttributes[0].AppendChild(squareTileXml.CreateTextNode(this.tileText.Text)); IXmlNode node = tileXml.ImportNode(squareTileXml.GetElementsByTagName("binding").Item(0), true); tileXml.GetElementsByTagName("visual").Item(0).AppendChild(node); TileNotification tileNotification = new TileNotification(tileXml); tileNotification.Tag = this.tileText.Text; //tileNotification.ExpirationTime = DateTimeOffset.UtcNow.AddSeconds(10); TileUpdateManager.CreateTileUpdaterForApplication().Update(tileNotification); }
/// <summary> /// Update the application's tile with the most recent quote /// </summary> /// <param name="quote">The quote's content to update the tile with</param> public void UpdateTile(BackgroundQuote quote) { XmlDocument tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWideText09); XmlNodeList tileTextAttributes = tileXml.GetElementsByTagName("text"); tileTextAttributes[0].InnerText = quote.Author; tileTextAttributes[1].InnerText = quote.Content; // Square tile XmlDocument squareTileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150Text02); XmlNodeList squareTileTextAttributes = squareTileXml.GetElementsByTagName("text"); //squareTileTextAttributes[0].AppendChild(squareTileXml.CreateTextNode("Hello World! My very own tile notification")); squareTileTextAttributes[0].InnerText = quote.Author; squareTileTextAttributes[1].InnerText = quote.Content; // Integration of the two tile templates IXmlNode node = tileXml.ImportNode(squareTileXml.GetElementsByTagName("binding").Item(0), true); tileXml.GetElementsByTagName("visual").Item(0).AppendChild(node); // Tile Notification TileNotification tileNotification = new TileNotification(tileXml); TileUpdateManager.CreateTileUpdaterForApplication().Update(tileNotification); }
/// <summary> /// 更新磁贴内容,最多支持四行信息 /// </summary> /// <param name="p_msgs"></param> public static void Tile(params string[] p_msgs) { #if UWP // 最多支持四行信息! int cnt = p_msgs.Length > 4 ? 4 : p_msgs.Length; if (cnt == 0) { return; } Windows.Data.Xml.Dom.XmlDocument xml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150Text03); Windows.Data.Xml.Dom.XmlNodeList nodes = xml.GetElementsByTagName("text"); for (uint i = 0; i < cnt; i++) { nodes.Item(i).InnerText = p_msgs[i]; } TileUpdateManager.CreateTileUpdaterForApplication().Update(new TileNotification(xml)); #elif IOS throw new NotImplementedException(); #elif ANDROID throw new NotImplementedException(); #elif WASM throw new NotImplementedException(); #endif }
public static void CreateLogoNotifications() { TileUpdater notifier = TileUpdateManager.CreateTileUpdaterForApplication(); if (notifier.Setting == NotificationSetting.Enabled) { notifier.EnableNotificationQueue(true); var MainSquareTemplate = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquareImage); MainSquareTemplate.GetElementsByTagName("image")[0].Attributes[1].NodeValue = "ms-appx:///Assets/Logo.png"; var squareNode = MainSquareTemplate.CreateAttribute("branding"); squareNode.Value = "name"; //none|logo|name MainSquareTemplate.GetElementsByTagName("binding")[0].Attributes.SetNamedItem(squareNode); var MainWideTemplate = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWideImage); MainWideTemplate.GetElementsByTagName("image")[0].Attributes[1].NodeValue = "ms-appx:///Assets/WideLogo.png"; var wideNode = MainWideTemplate.CreateAttribute("branding"); wideNode.Value = "none"; MainWideTemplate.GetElementsByTagName("binding")[0].Attributes.SetNamedItem(wideNode); var Mainnode = MainWideTemplate.ImportNode(MainSquareTemplate.GetElementsByTagName("binding").Item(0), true); MainWideTemplate.GetElementsByTagName("visual").Item(0).AppendChild(Mainnode); var MaintileNotification = new TileNotification(MainWideTemplate); notifier.Update(MaintileNotification); } }
private void UpdateTile(string style, string value) { TileTemplateType template = (TileTemplateType)Enum.Parse(typeof(TileTemplateType), style); XmlDocument tile = TileUpdateManager.GetTemplateContent(template); XmlNodeList text = tile.GetElementsByTagName("text"); if (text.Length > 0) { for (int i = 0; i < text.Length; i++) { text[i].AppendChild(tile.CreateTextNode(value)); } } XmlNodeList image = tile.GetElementsByTagName("image"); if (image.Length > 0) { for (int i = 0; i < image.Length; i++) { image[i].Attributes.GetNamedItem("src").NodeValue = "Assets/Square44x44Logo.scale-200.png"; } } TileNotification notification = new TileNotification(tile); string output = tile.GetXml(); TileUpdateManager.CreateTileUpdaterForApplication().Update(notification); }
// Initialize the app's tiles on the Start page. There are three different sizes of tiles users can // choose from. private void InitializeTiles() { tileUpdater = TileUpdateManager.CreateTileUpdaterForApplication(); var mediumSquareTile = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150PeekImageAndText01); var largeSquareTile = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare310x310ImageAndText02); var wideTile = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWide310x150PeekImage02); tileUpdater.EnableNotificationQueue(true); mediumSquareTile.GetElementsByTagName("text")[0].InnerText = "TicTacToe"; largeSquareTile.GetElementsByTagName("text")[0].InnerText = "TicTacToe"; wideTile.GetElementsByTagName("text")[0].InnerText = "TicTacToe"; var node1 = wideTile.ImportNode(mediumSquareTile.GetElementsByTagName("binding")[0], true); wideTile.GetElementsByTagName("visual")[0].AppendChild(node1); var node2 = wideTile.ImportNode(largeSquareTile.GetElementsByTagName("binding")[0], true); wideTile.GetElementsByTagName("visual")[0].AppendChild(node2); var testNotification = new TileNotification(wideTile); testNotification.Tag = "Test"; tileUpdater.Update(testNotification); badgeUpdater = BadgeUpdateManager.CreateBadgeUpdaterForApplication(); }
//更新磁贴的方法 private void UpdateTile() { //通过这个方法,我们就可以为动态磁贴的添加做基础。 var updater = TileUpdateManager.CreateTileUpdaterForApplication(); //这里设置的是所以磁贴都可以为动态 updater.EnableNotificationQueue(true); updater.Clear(); //然后这里是重点:记得分3步走: //foreach (var item in feed.Items) //{ //1:创建xml对象,这里看你想显示几种动态磁贴,如果想显示正方形和长方形的,那就分别设置一个动态磁贴类型即可。 //下面这两个分别是矩形的动态磁贴,和方形的动态磁贴,具体样式,自己可以去微软官网查一查。我这里用到的是换行的文字形式。 //XmlDocument tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150Text03); XmlDocument tileXml2 = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWide310x150Text01); //2.接着给这个xml对象赋值 XmlNodeList tileTextAttributes = tileXml2.GetElementsByTagName("text"); tileTextAttributes[0].InnerText = "百度经验个人助手"; tileTextAttributes[1].InnerText = textVisitAll.Text; tileTextAttributes[2].InnerText = textVisitRecent20.Text; tileTextAttributes[3].InnerText = textVoteAll.Text; tileTextAttributes[4].InnerText = textCollectAll.Text; //3.然后用Update方法来更新这个磁贴 updater.Update(new TileNotification(tileXml2)); //4.最后这里需要注意的是微软规定动态磁贴的队列数目小于5个,所以这里做出判断。 //} }
public void UpdateTile() { if (refreshDate == null || refreshDate.Value.Add(refreshInterval) < DateTime.Now) { return; } if (SecondaryTile.Exists(this.Id)) { XmlDocument tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150Text01); var texts = tileXml.GetElementsByTagName("text"); texts[0].InnerText = balance.TileString; if (balances != null) { for (int n = 0; n < Math.Min(texts.Count - 1, balances.Count); n++) { texts[n + 1].InnerText = balances[n].TileString; } } var updater = TileUpdateManager.CreateTileUpdaterForSecondaryTile(this.Id); updater.Clear(); updater.Update(new TileNotification(tileXml) { // Lai nerādītu, kad nolasīja datus, noņem informāciju pēc lietotāja noteiktā intervāla. ExpirationTime = DateTimeOffset.Now.Add(RefreshInterval) }); } }
private static void UpdateTile(Dictionary <string, StockData> stocks) { // Create a tile update manager for the specified syndication feed. var updater = TileUpdateManager.CreateTileUpdaterForApplication(); updater.EnableNotificationQueue(true); // Keep track of the number feed items that get tile notifications. int itemCount = 0; // Create a tile notification for each feed item. foreach (var stock in stocks) { XmlDocument tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWide310x150Text03); var ticker = stock.Key; string titleText = ticker == null ? String.Empty : ticker; tileXml.GetElementsByTagName(textElementName)[0].InnerText = titleText; TileContent tileContent = Notification.CreateNotification(stock.Key, stock.Value); TileNotification notification = new TileNotification(tileContent.GetXml()); notification.Tag = ticker; var coming = updater.GetScheduledTileNotifications(); updater.Update(notification); // Create a new tile notification. // updater.Update(new TileNotification(tileXml)); // Don't create more than 5 notifications. if (itemCount++ > 5) { break; } } }
public static void UpdateMainTileForPlayback(DbMediaFile item, string imageUrl) { lock (_lock) { // Not supported on IoT and Holographic platform. if (PlatformInfo.CurrentPlatform != Platform.WindowsMobile && PlatformInfo.CurrentPlatform != Platform.WindowsDesktop) { return; } // Large tile var largeTileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare310x310ImageAndTextOverlay02); var largeTileTextAttributes = largeTileXml.GetElementsByTagName("text"); largeTileTextAttributes[0].InnerText = item.Title; largeTileTextAttributes[1].InnerText = $"{item.Album} by {item.Artist}"; var largeTileImageAttributes = largeTileXml.GetElementsByTagName("image"); ((XmlElement)largeTileImageAttributes[0]).SetAttribute("src", string.IsNullOrEmpty(imageUrl) ? CommonSharedStrings.DefaultAlbumImagePath : imageUrl); ((XmlElement)largeTileImageAttributes[0]).SetAttribute("alt", item.Album); // Wide tile var tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWide310x150SmallImageAndText02); var tileTextAttributes = tileXml.GetElementsByTagName("text"); tileTextAttributes[0].InnerText = item.Title; tileTextAttributes[1].InnerText = item.Album; tileTextAttributes[2].InnerText = item.Artist; tileTextAttributes[3].InnerText = CommonSharedStrings.LiveTileLine3; var tileImageAttributes = tileXml.GetElementsByTagName("image"); ((XmlElement)largeTileImageAttributes[0]).SetAttribute("src", string.IsNullOrEmpty(imageUrl) ? CommonSharedStrings.DefaultAlbumImagePath : imageUrl); ((XmlElement)tileImageAttributes[0]).SetAttribute("alt", item.Album); // Square tile var sqTileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150PeekImageAndText02); var sqTileTextAttributes = sqTileXml.GetElementsByTagName("text"); sqTileTextAttributes[0].InnerText = item.Title; sqTileTextAttributes[1].InnerText = $"{item.Album} by {item.Artist}"; var sqTileImageAttributes = sqTileXml.GetElementsByTagName("image"); ((XmlElement)largeTileImageAttributes[0]).SetAttribute("src", string.IsNullOrEmpty(imageUrl) ? CommonSharedStrings.DefaultAlbumImagePath : imageUrl); ((XmlElement)sqTileImageAttributes[0]).SetAttribute("alt", item.Album); // Merge var node = largeTileXml.ImportNode(tileXml.GetElementsByTagName("binding").Item(0), true); // ReSharper disable once PossibleNullReferenceException largeTileXml.GetElementsByTagName("visual").Item(0).AppendChild(node); node = largeTileXml.ImportNode(sqTileXml.GetElementsByTagName("binding").Item(0), true); // ReSharper disable once PossibleNullReferenceException largeTileXml.GetElementsByTagName("visual").Item(0).AppendChild(node); var tileNotification = new TileNotification(largeTileXml) { ExpirationTime = DateTimeOffset.UtcNow.AddHours(2.0) }; TileUpdateManager.CreateTileUpdaterForApplication().Update(tileNotification); } }
private static void UpdateTile(SyndicationFeed feed) { var updater = TileUpdateManager.CreateTileUpdaterForApplication(); updater.EnableNotificationQueue(true); updater.Clear(); int itemCount = 0; foreach (var item in feed.Items) { XmlDocument tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWideText03); var title = item.Title; string titleText = title.Text == null ? String.Empty : title.Text; tileXml.GetElementsByTagName(textElementName)[0].InnerText = titleText; updater.Update(new TileNotification(tileXml)); if (itemCount++ > 5) { break; } } }
private async void Page_Loaded(object sender, RoutedEventArgs e) { listView.Items.Clear(); ConnectionProfile profile = NetworkInformation.GetInternetConnectionProfile(); bool isinternet = (profile != null) && profile.GetNetworkConnectivityLevel() == NetworkConnectivityLevel.InternetAccess; List <string> sites = new List <string>(); if (isinternet) { var sf = await Windows.Storage.ApplicationData.Current.LocalFolder.CreateFileAsync("sites.txt", Windows.Storage.CreationCollisionOption.OpenIfExists); using (var stream = await sf.OpenStreamForReadAsync()) { using (StreamReader sr = new StreamReader(stream)) { while (!sr.EndOfStream) { string[] s = sr.ReadLine().Split(','); if (s.Length > 1) { WPSite wps = new WPSite(s[0], s[1]); WPListUpdate wplu = new WPListUpdate(wps); List <string> plugins = await wplu.GetPluginsWithUpdate(); plugins.Insert(0, "Сайт " + s[0] + ":"); plugins.Add(string.Empty); foreach (string ss in plugins) { if (ss != "none" && ss != String.Empty) { listView.Items.Add(ss); if (!sites.Contains(s[0]) && ss != "Сайт " + s[0] + ":") { sites.Add(s[0]); } } } } } } } if (sites.Count > 0) { var tiledoc = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWide310x150Text04); var nodes = tiledoc.SelectNodes("tile/visual/binding/text"); string allsites = string.Empty; foreach (string s in sites) { allsites += s + ", "; } nodes[0].InnerText = "Обновление от " + DateTime.Now + ". Имеются обновления плагинов на следующих сайтах: " + allsites.TrimEnd(new char[] { ',', ' ' }); TileNotification tile = new TileNotification(tiledoc); TileUpdateManager.CreateTileUpdaterForApplication().Update(tile); } } }
/// <summary> /// Setup for the TileUpdater /// </summary> /// <returns></returns> private static TileUpdater SetupUpdater() { TileUpdater tileUpdater = TileUpdateManager.CreateTileUpdaterForApplication(); tileUpdater.EnableNotificationQueue(true); xmlDocument = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWideText09); return(tileUpdater); }
/// <summary> /// Initializes a new instance of the <see cref="BaseTile"/> class. /// </summary> /// <param name="templateType"> /// The template Type. /// </param> public BaseTile(TileTemplateType templateType) : base(TileUpdateManager.GetTemplateContent(templateType), GetTemplateName(templateType)) { this.Type = templateType; var size = TemplateMap.Keys.FirstOrDefault(s => this.TemplateType.Contains(s)); this.TileType = !string.IsNullOrWhiteSpace(size) ? TemplateMap[size] : TileTypes.Unknown; }
private void changeTile_Click(object sender, RoutedEventArgs e) { XmlDocument tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWideText01); XmlElement textElement = (XmlElement)tileXml.GetElementsByTagName("text")[0]; textElement.AppendChild(tileXml.CreateTextNode(message.Text)); tileUpdater.Update(new TileNotification(tileXml)); }
public override void BeforeSquareWideUpdate(XmlDocument doc, MusicItem track, Uri imageUri) { var largeXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare310x310ImageAndText02); TileUtil.SetImage(largeXml, imageUri); SetMeta(largeXml, track, includeAlbum: false); TileUtil.Embed(src: largeXml, dest: doc); }
private async void CyclicToggleSwitch_Toggled(object sender, RoutedEventArgs e) { if (Cyclic.IsOn) { cyclicTile = new SecondaryTile( "Cyclic", "Cyclic", "Arguments", new Uri("ms-appx:///Assets/blue.150x150.png", UriKind.Absolute), TileSize.Square150x150); await cyclicTile.RequestCreateAsync(); TileUpdateManager.CreateTileUpdaterForSecondaryTile(cyclicTile.TileId).EnableNotificationQueueForSquare150x150(true); tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquare150x150Image); tileImage = tileXml.GetElementsByTagName("image")[0] as XmlElement; tileImage.SetAttribute("src", "ms-appx:///Assets/blue.150x150.png"); notif = new TileNotification(tileXml); TileUpdateManager.CreateTileUpdaterForSecondaryTile(cyclicTile.TileId).Update(notif); tileImage.SetAttribute("src", "ms-appx:///Assets/red.150x150.png"); notif = new TileNotification(tileXml); TileUpdateManager.CreateTileUpdaterForSecondaryTile(cyclicTile.TileId).Update(notif); tileImage.SetAttribute("src", "ms-appx:///Assets/green.150x150.png"); notif = new TileNotification(tileXml); TileUpdateManager.CreateTileUpdaterForSecondaryTile(cyclicTile.TileId).Update(notif); tileImage.SetAttribute("src", "ms-appx:///Assets/yellow.150x150.png"); notif = new TileNotification(tileXml); TileUpdateManager.CreateTileUpdaterForSecondaryTile(cyclicTile.TileId).Update(notif); tileImage.SetAttribute("src", "ms-appx:///Assets/orange.150x150.png"); notif = new TileNotification(tileXml); TileUpdateManager.CreateTileUpdaterForSecondaryTile(cyclicTile.TileId).Update(notif); tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWide310x150Image); tileImage = tileXml.GetElementsByTagName("image")[0] as XmlElement; tileImage.SetAttribute("src", "ms-appx:///Assets/blue.310x150.png"); notif = new TileNotification(tileXml); TileUpdateManager.CreateTileUpdaterForApplication().Update(notif); tileImage.SetAttribute("src", "ms-appx:///Assets/red.310x150.png"); notif = new TileNotification(tileXml); TileUpdateManager.CreateTileUpdaterForApplication().Update(notif); tileImage.SetAttribute("src", "ms-appx:///Assets/green.310x150.png"); notif = new TileNotification(tileXml); TileUpdateManager.CreateTileUpdaterForApplication().Update(notif); tileImage.SetAttribute("src", "ms-appx:///Assets/yellow.310x150.png"); notif = new TileNotification(tileXml); TileUpdateManager.CreateTileUpdaterForApplication().Update(notif); tileImage.SetAttribute("src", "ms-appx:///Assets/orange.310x150.png"); notif = new TileNotification(tileXml); TileUpdateManager.CreateTileUpdaterForApplication().Update(notif); } else { TileUpdateManager.CreateTileUpdaterForApplication().Clear(); await cyclicTile.RequestDeleteAsync(); } }
private void SendLiveTileUpdate() { var tileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquarePeekImageAndText02); var tileTextAttributes = tileXml.GetElementsByTagName("text"); tileTextAttributes[0].InnerText = CourseDetails.Code; tileTextAttributes[1].InnerText = CourseDetails.Intitule; var tileImageAttributes = tileXml.GetElementsByTagName("image"); ((XmlElement)tileImageAttributes[0]).SetAttribute("src", "ms-appx:///Assets/Logo150X150.png"); ((XmlElement)tileImageAttributes[0]).SetAttribute("alt", "ITComp Logo"); var sqTileBinding = (XmlElement)tileXml.GetElementsByTagName("binding").Item(0); if (sqTileBinding != null) { sqTileBinding.SetAttribute("branding", "none"); } var wideTileXml = TileUpdateManager.GetTemplateContent(TileTemplateType.TileWideSmallImageAndText04); var wideTileTextAttributes = wideTileXml.GetElementsByTagName("text"); wideTileTextAttributes[0].AppendChild(wideTileXml.CreateTextNode(this.CourseDetails.Code)); wideTileTextAttributes[1].AppendChild(wideTileXml.CreateTextNode(this.CourseDetails.Intitule)); var wideTileImageAttributes = wideTileXml.GetElementsByTagName("image"); ((XmlElement)wideTileImageAttributes[0]).SetAttribute("src", "ms-appx:///Assets/Logo150X150.png"); ((XmlElement)wideTileImageAttributes[0]).SetAttribute("alt", "ITComp Logo"); var wideTileBinding = (XmlElement)wideTileXml.GetElementsByTagName("binding").Item(0); if (wideTileBinding != null) { wideTileBinding.SetAttribute("branding", "none"); } var node = tileXml.ImportNode(wideTileXml.GetElementsByTagName("binding").Item(0), true); var xmlNode = tileXml.GetElementsByTagName("visual").Item(0); if (xmlNode != null) { xmlNode.AppendChild(node); } var tileNotification = new TileNotification(tileXml) { ExpirationTime = DateTimeOffset.UtcNow.AddDays(1) }; TileUpdateManager.CreateTileUpdaterForApplication().Update(tileNotification); }
private static void _updatePrimaryTile(string text, string imgSrc, string imgAlt, TileTemplateType templateType) { TileUpdateManager.CreateTileUpdaterForApplication().EnableNotificationQueue(true); XmlDocument tileXml = TileUpdateManager.GetTemplateContent(templateType); //TileWide310x150ImageAndText01 //version XmlNodeList tileVersionAttributes = tileXml.GetElementsByTagName("visual"); ((XmlElement)tileVersionAttributes[0]).SetAttribute("version", "2"); //tileXml.FirstChild.FirstChild.Attributes[0].NodeValue = "2"; ////branding //XmlNodeList tileBindingAttributes = tileXml.GetElementsByTagName("binding"); //((XmlElement)tileBindingAttributes[0]).SetAttribute("branding", "logo"); //text XmlNodeList tileTextAttributes = tileXml.GetElementsByTagName("text"); if (tileTextAttributes.Count > 0) { tileTextAttributes[0].InnerText = text; } //tileTextAttributes[1].InnerText = "xxxxx"; //image XmlNodeList tileImageAttributes = tileXml.GetElementsByTagName("image"); ////image from apps package //((XmlElement)tileImageAttributes[0]).SetAttribute("src", "ms-appx:///assets/redWide.png"); //((XmlElement)tileImageAttributes[0]).SetAttribute("alt", "red graphic"); ////image from apps local storage //((XmlElement)tileImageAttributes[0]).SetAttribute("src", "ms-appdata:///local/redWide.png"); //((XmlElement)tileImageAttributes[0]).SetAttribute("alt", "red graphic"); ((XmlElement)tileImageAttributes[0]).SetAttribute("src", imgSrc); ((XmlElement)tileImageAttributes[0]).SetAttribute("alt", imgAlt); ////image from the web //((XmlElement)tileImageAttributes[0]).SetAttribute("src", "http://www.contoso.com/redWide.png"); //((XmlElement)tileImageAttributes[0]).SetAttribute("alt", "red graphic"); //create notifcation //TileNotification tileNotification = new TileNotification(tileXml); ScheduledTileNotification stn = new ScheduledTileNotification(tileXml, DateTimeOffset.Now.AddSeconds(8)); //notification expires in //tileNotification.ExpirationTime = DateTimeOffset.UtcNow.AddMinutes(10); //forced clear notification for app //Windows.UI.Notifications.TileUpdateManager.CreateTileUpdaterForApplication().Clear(); //send notification to app tile //TileUpdateManager.CreateTileUpdaterForApplication().Update(tileNotification); TileUpdateManager.CreateTileUpdaterForApplication().AddToSchedule(stn); }
private async void UpdateAllSecondaryTiles() { IReadOnlyList <SecondaryTile> tilelist = await SecondaryTile.FindAllAsync(); foreach (var tile in tilelist) { UpdateTile(TileUpdateManager.GetTemplateContent(TileTemplateType.TileSquarePeekImageAndText01), tile.TileId); } }